Commit graph

68 commits

Author SHA1 Message Date
Alessandro
2925baca8a Add file browser drag and drop
Some checks are pending
Build And Publish Docker Images / plan (push) Waiting to run
Build And Publish Docker Images / build (push) Blocked by required conditions
Move files and folders into directories or the parent path from the shared Files surface, with guarded multi-item backend moves and clear drop feedback.

Keep drag gestures independent from row selection, preserve unrelated selections after moves, and add focused regression coverage.
2026-08-01 12:50:31 +02:00
frdel
93d1131ce1 Unify WebUI icons and fix message collapsing
Introduce the x-icon custom element and migrate first-party WebUI and bundled plugin markup while retaining legacy Material icon compatibility. Defer icon-font readiness until the splash-installed document is parsed so Firefox does not leave icons transparent. Centralize chat message collapse handling, avoid false Show More controls on short user messages, and align grouped-message pagination styling. Update DOX and add regression coverage for the icon and collapse behavior.
2026-07-31 13:32:41 +00:00
Alessandro
98589c6357 Add Editor downloads and archive extraction
Add Download to Editor file actions and safe File Browser extraction for ZIP, TAR, RAR, 7z, and compressed archives. Include archive safety checks, focused regressions, and 7zip in the base image.
2026-07-16 15:14:03 +02:00
Alessandro
8ecd7a7f52 Fix file browser action menu clipping
Render file action menus outside the scroll container with fixed positioning so dropdowns remain visible while file list scrolling stays intact.

Deduplicate component body assets during x-component loading and add regressions for the menu, opaque header, and duplicate scoped styles.
2026-07-02 17:29:40 +02:00
Alessandro
b805773c91 Render composer code blocks from typed fences
Switch the chat composer to a Markdown-backed contenteditable editor so typing a triple-backtick fence and pressing Enter creates a visual code block while pasted fenced Markdown stays plain text.

Serialize visual code blocks back to fenced Markdown for send/history, keep full-screen input in sync with the backing store, and update the focused composer regression plus DOX contract.
2026-07-02 17:29:40 +02:00
Alessandro
3106abce96 Preserve surface windows across refresh
Restore restorable surface modals through the initFw_end extension hook and keep right-canvas state in session storage for normal reloads.

Fix Desktop host visibility after modal cleanup so preserved iframes reattach to real modal or canvas hosts, and remove the duplicate file-browser path icon overlay.
2026-06-23 18:28:16 +02:00
Alessandro
bd584da2f4 Improve Editor text file workflows
Generalize the Editor storage/session path from Markdown-only to exact-text .md and .txt documents, including open, save, Save As, and rename refresh behavior.

Expose Open in Editor as a visible row action in the File Browser for Editor-owned text files, keep non-Editor surface opens in the overflow menu, and route Desktop text MIME handling through the Editor bridge.

Tests: node --check webui/components/modals/file-browser/file-browser-store.js; python -m py_compile plugins/_office/helpers/document_store.py plugins/_editor/helpers/markdown_sessions.py plugins/_editor/api/editor_session.py plugins/_editor/api/ws_editor.py plugins/_desktop/helpers/desktop_session.py plugins/_desktop/api/desktop_session.py plugins/_office/api/office_session.py plugins/_office/api/ws_office.py; pytest tests/test_office_document_store.py tests/test_file_browser_navigation.py tests/test_office_canvas_setup.py -q
2026-06-23 14:42:49 +02:00
Alessandro
0028473ec9 Polish mobile browser affordances
Keep the File Browser path and search affordances on compact mobile rows, with create buttons sharing the search row and the Up control sharing the path row.

Give the Web Browser mobile toolbar a full-width address row by moving navigation controls above it, and add regression/DOX coverage for the layout contracts.
2026-06-23 14:01:30 +02:00
Alessandro
ffddc3ebcb Promote Files into shared canvas surface
Add Files to the universal canvas rail and sidebar flow, with a reusable floating surface modal chrome that matches Browser/Desktop behavior.

Make the File Browser modal draggable/resizable with Focus mode, keep Editor on the same draggable modal helper, and preserve dock/undock handoff state.

Harden File Browser startup so empty paths resolve to the default workdir, restyle the Up control, compact New file/New folder actions, and hide Modified before Name/Size in narrow containers.

Update DOX contracts and focused regression coverage for the new Files surface, modal chrome, default-path fallback, and compact layout behavior.
2026-06-23 11:19:58 +02:00
frdel
c576f67469 Merge branch 'ready' of https://github.com/agent0ai/agent-zero into ready 2026-06-08 12:41:57 +02:00
frdel
e138e33ca9 Add file-level DOX docs & update AGENTS indexes
Add comprehensive file-level DOX documentation across the repo and update directory AGENTS.md indexes. Many new `*.py.dox.md` files were added under api, helpers, tools, plugins, extensions, webui, and other dirs to document endpoint purpose, ownership, runtime contracts, work guidance, and verification. Several AGENTS.md files were created or updated (agents profiles, api, docker, extensions, helpers, plugins, skills, webui components, etc.) to list child DOX files and clarify documentation/work guidance. Also add example and bundled profile DOX files (agent0, default, developer, hacker, researcher) and minor updates to helpers/dirty_json.py and its tests. These changes improve on-disk documentation coverage and establish the convention that each direct runtime file should have a matching `*.dox.md` describing its contracts and verification steps.
2026-06-08 12:41:53 +02:00
Alessandro
f9d8167a00 Make file browser paths editable
Some checks failed
Build And Publish Docker Images / plan (push) Has been cancelled
Build And Publish Docker Images / build (push) Has been cancelled
Add direct directory navigation to the file browser path bar and preserve the current listing when typed paths fail.

Add a default-enabled setting to remember the last successful file browser directory, while keeping explicit open paths deterministic.
2026-06-04 17:29:53 +02:00
Alessandro
4f2d996ac8 Allow file browser to open root Markdown in Editor
Let File Browser-sourced Editor opens register existing Markdown files under the Agent Zero runtime root while preserving the stricter document artifact sandbox for ordinary document operations. Pass the file-browser source through the Editor store and cover the /a0/AGENTS.md-style path with regression tests.
2026-05-22 15:00:03 +02:00
Alessandro
1c9b5c8b21 Add contextual file browser surface actions
Route Markdown files to Editor, txt and Office documents to Desktop, and browser-renderable files to Browser from the file browser action menu. Extend the Desktop/document allowlists for txt files, keep unsupported small files on the legacy editor path, and harden tooltip cleanup for dropdown-triggered modal closes.
2026-05-22 14:45:53 +02:00
Alessandro
d1827e6c66 Refactor: use user locale for time displays
Some checks are pending
Build And Publish Docker Images / plan (push) Waiting to run
Build And Publish Docker Images / build (push) Blocked by required conditions
Add user-configurable timezone and 12/24-hour preferences, then wire them through settings, runtime snapshots, scheduler payloads, wait handling, notifications, backups, memory, plugin metadata, and frontend formatters.

Keep UTC as the boundary for absolute instants while serializing user-facing dates in the configured or browser-resolved timezone. Preserve scheduler wall-clock inputs in the selected timezone, propagate TZ into desktop/runtime process environments, and restart active desktop sessions when the runtime timezone changes.

Cover the risky paths with timezone regression tests for settings normalization, auto and fixed timezone resolution, scheduler round-trips, memory timestamp conversion, and desktop timezone sync.
2026-05-21 15:26:00 +02:00
Alessandro
764339b5e7 Add ZIP download toast feedback
Allow display_time=0 to create persistent grouped toasts that remain until dismissed or replaced.

Show immediate grouped Preparing download and Downloading feedback for backup ZIPs and file-browser directory/bulk ZIP downloads, with error replacement and focused static coverage.
2026-05-07 18:43:24 +02:00
Alessandro
63ba821684 Align action button order with settings
Use the Settings modal action order across plugin settings and related edit/create modals so primary actions appear before Cancel while preserving existing handlers and state logic.
2026-05-07 03:39:16 +02:00
Alessandro
dd696732c8 Fix canvas markdown rename before save
Route Office canvas renames through the document store so dirty or missing-on-disk Markdown sessions can be materialized at the new path without hitting the generic workdir filesystem rename endpoint. Add regression coverage for missing draft materialization, dirty markdown rename, and the custom rename hook contract.
2026-05-02 20:51:58 +02:00
Alessandro
f17e13b859 Add file browser search and bulk actions
Adds a branded file-browser toolbar with current-folder search, visible selection, and selection status.

Introduces bulk copy paths, ZIP download, and delete actions backed by dedicated API handlers so selected files are processed as one browser operation.
2026-05-02 19:44:13 +02:00
Alessandro
27b3624a97 Add Office document rename action
Add a pencil action beside Save that reuses the existing file browser rename modal for open Office documents. Preserve document metadata after filesystem renames, retarget active LibreOffice desktop sessions to the new path, and cover the rename flow in Office regression tests.
2026-05-02 19:31:53 +02:00
Alessandro
ff1f26f6ac Add directory ZIP downloads to file browser
Expose a directory-only Download ZIP action in the file browser menu and make folder downloads use a stable .zip filename from the existing download endpoint.
2026-05-02 19:30:42 +02:00
Alessandro
704c0e9daf Polish sidebar task actions
Move Remote Link and Space Agent into the sidebar dropdown while removing their right-canvas rail actions.

Rename Scheduler-facing UI to Tasks and collapse Chat Actions behind a persisted dropdown accordion.
2026-05-02 17:34:24 +02:00
Alessandro
79f948b076 Improve active skills management and simplify Skills UI
Unify skill handling layer and raise the active skills cap to 20.

The Skills UI now presents a simpler checklist-style flow for selecting active
skills, with live chat activation and saved defaults using the same visible list.
Skill contents can be opened in a read-only Ace viewer via the existing markdown
modal.
2026-04-21 05:47:22 +02:00
Alessandro
c2e14b6cd1 sanitize plugin markdown rendering with shared helper
Add a shared safe markdown pipeline for plugin READMEs and docs.

- vendor DOMPurify and introduce a shared safe-markdown helper
- centralize GitHub README link/image rebasing, including repo routes like `releases`
- sanitize rendered HTML before all plugin-related x-html sinks
- apply the shared renderer to Plugin Hub README, installed plugin README, and markdown modal docs
- preserve target/rel handling for external links
2026-03-28 19:29:26 +01:00
frdel
68e65ae873 fix scheduler api calls
Some checks are pending
Build And Publish Docker Images / plan (push) Waiting to run
Build And Publish Docker Images / build (push) Blocked by required conditions
2026-03-27 12:47:53 +01:00
Alessandro
870351280a fix padding in basic modals style
- Updated margin in memory-dashboard.html for better layout consistency.
- Modified padding in scheduler-modal.html to enhance visual spacing.
- Simplified padding in modals.css for a cleaner modal appearance.
- Removed unnecessary margin-top in settings.css to streamline styling.
2026-03-08 16:27:10 +01:00
Alessandro
cce1acbb76 fix full-screen-input bg contrast 2026-02-26 12:04:06 +01:00
Alessandro
59ed70d8c1 generic markdown modal and plugins wiring 2026-02-24 15:23:14 +01:00
frdel
a1589c27f5 Add plugin config listing/deletion + UI improvements
Expose plugin config management and improve UI/UX. Backend: add plugins API actions list_configs and delete_config (with validation and file deletion), and refine find_plugin_assets to infer project/agent from paths when wildcards are used. Frontend: update download endpoints to /api/download_work_dir_file, redesign plugin-configs list layout, add delete confirmation and show action, and adjust styles. Enhance plugin-settings-store with unsaved-changes detection, scope-change confirmation, config listing and deletion via the new API, and settings snapshot lifecycle. Also update message path replacement to use the /api prefix.
2026-02-20 18:12:03 +01:00
3clyp50
54fb4746a4 initial plugins effort; memory system PoC
plugin manifest update
add memory plugin PoC files
offload memory prompts
cleanup imports
extract memory UI
fix paths
plugin docs
2026-02-14 17:05:37 +01:00
3clyp50
1880eb09d4 file browser dropdown fix 2026-02-05 10:10:04 +01:00
frdel
3adec910c0 image response prompt, image view scroll 2026-02-02 20:19:35 +01:00
3clyp50
a03f7b9c53 Merge PR 861 skills 2026-02-02 10:52:46 +01:00
3clyp50
8f0bae7ba4 reset isSaving before closing file edit modal 2026-02-01 20:28:24 +01:00
3clyp50
817c580b36 no-scrollbar utility class
single scrollbar in modals
2026-02-01 20:28:23 +01:00
3clyp50
a01d3c75e5 file browser polishing 2026-01-31 16:51:58 +01:00
3clyp50
6af4899049 clean error msgs in file browser 2026-01-31 16:14:23 +01:00
TerminallyLazy
95de41a99e Merge upstream/development into feat-agent-zero-skills-upgrade
Accept upstream's architectural refactors:
- Settings UI sections moved from Python to frontend components
- User data consolidated under /usr directory
- Inline settings modal replaced by stacked modal system
- settings.js removed (moved to component stores)

Conflicts resolved by accepting upstream for all 5 files.
Our skills/backup features will be re-implemented using the new architecture.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 02:58:07 -05:00
3clyp50
a2bd2750e3 file editor component 2026-01-29 23:54:13 +01:00
3clyp50
7623b5a7a6 file/dir renaming, file actions dropdown, extend APIs 2026-01-29 23:54:13 +01:00
3clyp50
c25815f752 flat kvps in step detail modals 2026-01-29 12:54:16 +01:00
3clyp50
c372a7e048 segments copy btn in step details 2026-01-29 12:47:17 +01:00
3clyp50
435ab07368 scrollbar fix 2026-01-27 12:16:02 +01:00
3clyp50
28c0fd8693 generic modals with kvps for step detail 2026-01-27 12:09:37 +01:00
frdel
f63df9f4eb chat rendering refactor - work in progress 2026-01-25 19:12:34 +01:00
3clyp50
23beed94de message handling refactor #1 2026-01-23 14:13:02 +01:00
3clyp50
0acc14a315 gen step detail content fix 2026-01-21 14:57:34 +01:00
frdel
cc834d3b36 images, image viewer 2026-01-21 14:02:15 +01:00
3clyp50
cc276a0f5b step detail modal for all events 2026-01-20 15:48:53 +01:00
3clyp50
04cd6f638b extend confirmClick coverage 2026-01-06 02:20:53 +01:00