agent-zero/helpers
Alessandro ca4efe6e6a Fix Tailscale Remote Control CSRF origins
Normalize active Remote Control URLs to same-origin values before adding them to CSRF allowlists, so Tailscale Funnel URLs with paths or trailing slashes can bootstrap tokens correctly.

Allow WebSocket origin validation to trust only the currently active Remote Control origin, including Docker split-process tunnel service URLs, while preserving rejection for unrelated external origins.

Add focused regression coverage for active Tailscale-style origins, tunnel-service origin lookup, and negative cross-origin cases; keep run_ui decorator re-exports compatible with existing CSRF tests.
2026-06-04 14:54:39 +02:00
..
AGENTS.md Include top-level AGENTS.md in project instructions 2026-06-02 14:50:29 +02:00
api.py feat(login): Enhance next URL validation to reject backslash open redirects 2026-06-02 21:55:37 -07:00
attachment_manager.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
backup.py Refactor: use user locale for time displays 2026-05-21 15:26:00 +02:00
browser.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
cache.py refactor: add file system watchdog support for API handlers, extensions, and plugins 2026-03-18 21:07:33 +01:00
call_llm.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
chat_media.py Fix durable screenshot artifacts and Xpra sizing 2026-05-30 17:45:19 +02:00
cli_tunnel.py Harden Tailscale Funnel remote control 2026-06-01 02:11:58 +02:00
cloudflare_tunnel._py Add Remote Control tunnel providers 2026-05-28 22:33:29 +02:00
cloudflare_tunnel.py Add Remote Control tunnel providers 2026-05-28 22:33:29 +02:00
context.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
context_utils.py refactor: Backend core rewrite - WsHandler + WsManager + handler migration 2026-03-26 00:58:01 -07:00
crypto.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
defer.py Ignore late deferred future completion 2026-05-09 17:36:19 +02:00
dirty_json.py stop tool dispatch at first completed json object 2026-04-03 16:56:21 +02:00
docker.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
document_query.py feat(document_query): add liteparse runtime and progressive skill 2026-05-29 12:45:14 +02:00
dotenv.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
duckduckgo_search.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
email_client.py refactor - plugin names and builtin plugins 2026-03-10 22:20:53 +01:00
ephemeral_images.py Make browser screenshots ephemeral and context scoped 2026-05-22 09:50:47 +02:00
errors.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
extension.py Move subagents import to function scope to avoid circular import 2026-03-26 12:39:08 +01:00
extract_tools.py Normalize tool contracts and slim prompt surface 2026-05-09 21:54:43 +02:00
faiss_monkey_patch.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
fasta2a_client.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
fasta2a_server.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
file_browser.py Refactor: use user locale for time displays 2026-05-21 15:26:00 +02:00
file_tree.py Refactor: use user locale for time displays 2026-05-21 15:26:00 +02:00
files.py refactor: consolidate module loading utilities and add plugin lifecycle improvements 2026-03-23 21:13:25 +01:00
functions.py refactor: consolidate module loading utilities and add plugin lifecycle improvements 2026-03-23 21:13:25 +01:00
git.py Refactor: use user locale for time displays 2026-05-21 15:26:00 +02:00
guids.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
history.py refactor(chat_branching): ID-based log ↔ history linking for precise branch trimming 2026-03-24 03:04:09 -07:00
images.py Store vision and computer-use images as path refs 2026-04-21 18:18:59 +02:00
integration_commands.py integrations: add native chat controls and email config presets 2026-04-11 18:49:13 +02:00
job_loop.py feat: Add email integration plugin with IMAP/Exchange polling and SMTP reply 2026-03-15 10:59:48 +08:00
kvp.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
localization.py Refactor: use user locale for time displays 2026-05-21 15:26:00 +02:00
log.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
login.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
mcp_handler.py Fix MCP multimodal content handling 2026-05-26 15:31:33 +02:00
mcp_server.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
media_artifacts.py Fix MCP multimodal content handling 2026-05-26 15:31:33 +02:00
message_queue.py refactor(chat_branching): ID-based log ↔ history linking for precise branch trimming 2026-03-24 03:04:09 -07:00
messages.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
microsoft_tunnel.py Add Remote Control tunnel providers 2026-05-28 22:33:29 +02:00
migration.py refactor: comprehensive UI server restructuring and self-update enhancements 2026-03-31 15:20:57 +02:00
modules.py refactor: consolidate module loading utilities and add plugin lifecycle improvements 2026-03-23 21:13:25 +01:00
network.py fix: preserve safe remote fetch compatibility for public sites 2026-04-12 02:08:13 +02:00
notification.py Refactor: use user locale for time displays 2026-05-21 15:26:00 +02:00
performance.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
perplexity_search.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
persist_chat.py Refactor: use user locale for time displays 2026-05-21 15:26:00 +02:00
plugins.py Simplify plugin activation toggle UI 2026-05-21 04:31:19 +02:00
print_catch.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
print_style.py Sanitize print logs; refactor popular plugin logic 2026-03-30 11:50:59 +02:00
process.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
projects.py Include top-level AGENTS.md in project instructions 2026-06-02 14:50:29 +02:00
providers.py Remove redundant provider reload call from plugin change handler 2026-03-12 07:31:45 +01:00
rate_limiter.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
rfc.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
rfc_exchange.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
rfc_files.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
runtime.py Add Remote Control tunnel providers 2026-05-28 22:33:29 +02:00
searxng.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
secrets.py feat(secrets): add @extensible decorator to secrets factory functions 2026-03-12 15:30:50 +00:00
security.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
self_update.py Refactor: use user locale for time displays 2026-05-21 15:26:00 +02:00
serveo_tunnel.py Add Remote Control tunnel providers 2026-05-28 22:33:29 +02:00
server_startup.py refactor: comprehensive UI server restructuring and self-update enhancements 2026-03-31 15:20:57 +02:00
settings.py Refactor: use user locale for time displays 2026-05-21 15:26:00 +02:00
skills.py Make skills cap configurable 2026-05-26 17:01:13 +02:00
skills_cli.py add a0-setup-cli Skill and restore lexical trigger matching 2026-04-11 18:03:05 +02:00
skills_import.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
state_migration.py Move office and desktop state under plugin storage 2026-05-12 16:21:43 +02:00
state_monitor.py refactor: extract constants, deduplicate ack pattern 2026-03-28 02:51:57 -07:00
state_monitor_integration.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
state_snapshot.py Refactor: use user locale for time displays 2026-05-21 15:26:00 +02:00
strings.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
subagents.py refactor: improve caching system and optimize extension/plugin path resolution 2026-03-18 12:40:33 +01:00
system_packages.py Serialize runtime package preparation 2026-05-07 03:14:12 +02:00
tailscale_tunnel.py Harden Tailscale Funnel remote control 2026-06-01 02:11:58 +02:00
task_scheduler.py Refactor: use user locale for time displays 2026-05-21 15:26:00 +02:00
timed_input.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
tokens.py Require visual verification for computer-use captures 2026-05-23 10:32:37 +02:00
tool.py refactor(chat_branching): ID-based log ↔ history linking for precise branch trimming 2026-03-24 03:04:09 -07:00
tunnel_common.py Add Remote Control tunnel providers 2026-05-28 22:33:29 +02:00
tunnel_manager.py Add Remote Control tunnel providers 2026-05-28 22:33:29 +02:00
tunnel_origins.py Fix Tailscale Remote Control CSRF origins 2026-06-04 14:54:39 +02:00
ui_server.py feat(login): Implement secure post-login redirection 2026-06-02 21:54:48 -07:00
update_check.py Revert update check API endpoint from tapi.agent-zero.ai back to api.agent-zero.ai 2026-03-25 18:53:38 +01:00
vector_db.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00
virtual_desktop.py Harden internal Xpra desktop control 2026-05-30 22:22:15 +02:00
virtual_desktop_routes.py Move Linux Desktop runtime into _desktop 2026-05-07 00:14:54 +02:00
wait.py Refactor: use user locale for time displays 2026-05-21 15:26:00 +02:00
watchdog.py fix: create watch directory if it doesn't exist instead of raising FileNotFoundError 2026-03-19 20:52:35 +01:00
ws.py Fix Tailscale Remote Control CSRF origins 2026-06-04 14:54:39 +02:00
ws_manager.py refactor: extract constants, deduplicate ack pattern 2026-03-28 02:51:57 -07:00
yaml.py BIG PYTHON REFACTOR 2026-03-05 17:28:11 +01:00