Commit graph

81 commits

Author SHA1 Message Date
Alessandro
0d9a7cd65d Polish Office canvas document controls
Unify Markdown and LibreOffice document handling around an active-file header in both canvas and modal views. Move creation into a shared + New menu, place Save beside file actions, and expose Rename/Close File from the document dropdown. Update the README with the refreshed Office and Browser screenshots plus the new Office UI behavior.
2026-05-05 18:17:36 +02:00
Alessandro
04b9f45199 Update README.md
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-05-05 17:27:42 +02:00
Alessandro
2398bd1601 Make Office artifacts ODF-first
Promote LibreOffice-native ODT, ODS, and ODP as first-class defaults for Writer, Spreadsheet, and Presentation while keeping OOXML as explicit compatibility formats.

Add ODF package generation, validation, read/edit support, and focused tests for Markdown, ODT, ODS, ODP, DOCX, XLSX, and PPTX artifact behavior.

Reduce automatic document response triggering so meta-discussions about generated files do not create artifacts, while explicit file and canvas requests still work through the intended Markdown editor or Desktop affordance.

Preserve the native A0 browser launcher, sync the live container, and validate the flow with real chats and Playwright.
2026-05-05 10:01:09 +02:00
Alessandro
949c96930a docs: update OAuth README screenshot 2026-05-02 21:07:22 +02:00
Alessandro
10a6cd28c6 feat(office): replace Collabora with LibreOffice document runtime
Remove the Collabora/WOPI runtime and route stack, including the old status APIs, proxy helpers, bootstrap extensions, and WOPI store tests. Add the Markdown-first document store, LibreOffice status/conversion helpers, LibreOfficeKit session bridge, and reusable Xpra virtual desktop gateway used by the new document runtime.

Update image and self-update bootstrap paths so existing containers can acquire the LibreOffice, XFCE, Xpra, and desktop-control dependencies through the normal install hooks instead of an ad hoc manual install.
2026-05-02 13:07:10 +02:00
Alessandro
f67564a8ae Add Codex/ChatGPT account OAuth provider
Create a generic OAuth Connections plugin with Codex/ChatGPT Account as the first provider, using OpenAI's device-code flow to persist Codex-compatible account tokens.

Expose a loopback OpenAI-compatible wrapper for models, responses, and chat completions, and point LiteLLM at the container-local Agent Zero origin.

Add a dummy API-key extension and focused tests so the account-backed provider appears configured without requiring a user-entered key.

docs: add Codex plan OAuth callout

Highlight that Agent Zero can use an existing OpenAI Codex plan through the new OAuth flow.

Add the account-backed LLM plans image and surface the section from the README navigation, while pointing toward future Gemini CLI and Claude Code integrations.

Handle Codex account SSE chat chunks

Teach the Codex/ChatGPT account bridge to extract text from OpenAI-style SSE chat completion deltas and fall back to a normal output_text response when upstream only streams chunks.

Strip user-supplied stream kwargs before LiteLLM calls so Agent Zero owns streaming mode and custom parameters cannot pass stream twice.

Add targeted tests for streamed delta extraction and reconstructed responses.

update README.md with LLM plans mention
2026-04-28 16:14:53 +02:00
Alessandro
8a59cb8796 update main readme pre v1.10
Update README.md

replace thumb img and update main readme
2026-04-28 14:19:01 +02:00
Alessandro
983d431a5e browser: replace browser-use agent with native browser
Introduce the new built-in Browser plugin for Agent Zero, replacing the legacy
browser-use-based browser agent with a direct Playwright-powered browser tool,
live WebUI viewer, browser session controls, status APIs, configuration, and
extension-management support.

Add browser-specific modal behavior so the browser can run as a floating,
resizable, no-backdrop window, including modal focus, toggle, and idempotent
open helpers for richer WebUI surfaces.

Remove the old `_browser_agent` core plugin and the `browser-use` dependency,
then clean up stale browser-model wiring and references across agent code,
model configuration docs, setup guides, troubleshooting docs, skills, and
Agent Zero knowledge.

Update regression and WebUI extension-surface coverage for the new browser
architecture and modal behavior.

The legacy browser-use implementation has been extracted from core so it can
continue separately as a community plugin published through the A0 Plugin Index for any user or professional that were relying on it for workflow.
2026-04-24 15:43:52 +02:00
Nicolas Leão
69e177487f Update README and installation docs
Some checks failed
Build And Publish Docker Images / plan (push) Has been cancelled
Build And Publish Docker Images / build (push) Has been cancelled
2026-03-27 11:19:50 -03:00
frdel
84798abf90 Replace static release notes files with dynamic OpenRouter-based generation in Docker publish workflow
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
- Remove RELEASE_NOTES_DIR env var and docs/release_notes/ directory with v1.0 and v1.1 markdown files
- Add OPENROUTER_API_KEY and OPENROUTER_MODEL to workflow environment variables
- Add OPENROUTER_CHAT_COMPLETIONS_URL constant and OPENROUTER_SYSTEM_PROMPT_PATH pointing to scripts/openrouter_release_notes_system_prompt.md
- Add require_env, load_text, github_repository_parts, github_api_get helpers
2026-03-26 20:02:00 +01:00
frdel
1d6d549765 Update documentation with release notes workflow and Docker publish automation details
- Add release notes section to AGENTS.md with workflow overview and writing guidelines
- Document Docker publish automation in Git Workflow section
- Add release_notes/ directory reference to key files list
- Update README.md with release notes documentation link and changelog note
- Add release notes entry to docs/README.md navigation
- Document automated Docker Hub publishing in dev-setup.md
- Update AGENTS
2026-03-25 15:19:08 +01:00
Alessandro
db15bdb3bf refactor: extract browser agent into built-in plugin
Move the Browser Agent/browser-use stack into a tracked built-in
`_browser_agent` plugin while preserving the current model/config flow.

Changes:
- add built-in `_browser_agent` plugin with tool, helpers, prompts, assets,
  status API, and WebUI message/status surfaces
- move browser-use wrapper and monkeypatch ownership out of `models.py`
  into plugin helper code
- keep browser model resolution on the `_model_config` path and continue
  using the effective Main Model / chat model config
- remove stale Browser HTTP Headers UI and outdated browser-model wording
- make Playwright runtime resolution bootstrap-only and stop installing
  browser binaries on demand
- switch browser log rendering to plugin-owned WebUI extension handling
  with core fallback compatibility for old logs
- delete obsolete core browser tool/helpers/prompts/assets after plugin
  resolution is in place
- update docs to reflect built-in plugin ownership and Main Model browser
  behavior

feat(browser-agent): improve lifecycle reliability, LLM compatibility, and local-dev bootstrap

- **Lifecycle Reliability**: Implemented stale Chromium lock file cleanup and one-shot ephemeral profile fallback to prevent CDP connection hangs and profile-locked crashes.
- **LLM Compatibility**: Added OpenRouter/Gemini shims including schema compaction, system instruction injection, and JSON output normalization for `browser-use` validation.
- **Cache Alignment**: Reverted Playwright browser cache to `tmp/playwright` for parity with core behavior and updated Docker scripts and documentation accordingly.
- **Local-Dev Bootstrap**: Added a plugin `install()` hook to automate Python dependency setup and transitioned bootstrap feedback to UI notifications.
- **Plugin Config**: Set `always_enabled: false` to allow users to opt-out or bring their own browser providers.
- **Testing**: Expanded test suite to cover lifecycle edge cases, LLM normalization, and bootstrap logic.

rework clean up browser agent sessions on reset/removal

Force browser-agent teardown to use BrowserSession.kill() so keep_alive sessions do not leave Chromium running and keep the profile locked. Add centralized browser state cleanup for reset/context removal and regression tests to cover the new teardown path and prevent SingletonLock fallbacks from stale sessions.

add browser agent thumbnail

restore local dev for Playwright in browser agent via hook

- Introduced a new hook to bootstrap Playwright for local development, ensuring the Chromium headless shell is installed when in development mode.
- Updated the Playwright helper to call the new hook if the binary is not found during the binary check.
- Added tests to verify the correct installation and behavior of the Playwright binary in local development scenarios.

proper install notifications for Playwright in local dev

- Added notification management for Playwright bootstrap process, including info, success, and error notifications.
- Enhanced the `bootstrap_local_dev_playwright` function to notify users about the installation status of the Playwright runtime.
- Updated tests to verify the correct notifications are sent during the Playwright installation process.

rework browser state cleanup extensions for agent context removal and reset

- Added `CleanupBrowserStateOnRemove` and `CleanupBrowserStateOnReset` extensions to handle browser state cleanup when an agent context is removed or reset.
- Updated `cleanup_browser_agent_state` function to utilize new protocols for better type safety and clarity.
- Enhanced the `State` class to ensure proper cleanup of browser sessions and user data directories.
- Introduced tests to validate the cleanup functionality and ensure browser sessions are correctly managed during agent lifecycle events.

enhance Playwright cache handling

- Updated Playwright helper to include support for a new cache directory at `.cache/ms-playwright`, aligning with standard cache locations.
- Modified the `get_playwright_search_dirs` function to incorporate the new cache path.
- Added a new test to verify the retrieval of the Playwright binary from the repository's `.cache/ms-playwright` directory, ensuring proper functionality across different cache locations.
- Updated existing tests to reflect changes in cache path handling.

update docs and README.md

restore local dev bootstrap and async-safe teardown

Keep Browser Agent bootstrap local in development, matching pre-extraction behavior, by removing the RFC filesystem hop from Playwright cache setup. Restore on-demand local-dev bootstrap through plugin hooks before browser-use import, so missing browser packages and runtime can be installed on first use.

Rework browser session teardown to be async-safe during reset and cleanup, avoiding nested event loop shutdown failures while still terminating the browser worker cleanly. Also remove redundant browser-use patch application and add regression tests covering local bootstrap, reset-time async shutdown, and lifecycle cleanup.

playwright bootstrap via plugin hooks

[Fixed][P1] The hook-based restore was architecturally in the right place, but it was too late to recover a missing local browser_use / playwright install. The browser tool imports browser_use at module load time, and tool loading silently skips modules that fail to import, so the plugin install() hook could never rescue the first browser invocation if those packages were absent. I fixed that by calling the plugin install hook before importing browser_use in local development: browser_use.py, browser_use.py, agent.py, test_browser_agent_playwright_bootstrap.py.

[Fixed][P3] The Browser Agent UI and runtime error text still claimed on-demand install did not exist, which contradicted the intended local-dev bootstrap path. I corrected both messages so they now describe the real behavior: main.html, playwright.py.

rm tests

restore old browser use logic files

restore old browser working behaviour

browser: migrate cleanup hooks to new extensible paths

Update Browser Agent cleanup extensions to the new deep @extensible path layout introduced in 7e1d9ad2a4, so AgentContext reset/remove hooks fire again after the framework migration.

`This restores browser state cleanup when chats are reset or deleted, preventing keep-alive browser sessions from surviving context removal and leaving chats stuck until restart. The change also keeps the recent browser regressions covered with focused tests for Anthropic/OpenRouter action normalization, keep-alive session teardown via kill(), and extension discovery under the new _functions/... path structure.`

Update messages.js

update docs
2026-03-23 15:21:57 +01:00
Alessandro
48632c2a95 plugin standards in docs; enhance A0 knowledge/main
docs: update installation guide thumbnail and URL

- Updated the video URL and thumbnail to be the new script-based installation guide from YT in README.md and internal docs.

---

- Standardize Python imports for user plugins to `usr.plugins.<plugin_name>...`,
  replacing sys.path hacks and symlink-dependent patterns
- Add cleanup policy: plugins must not leave permanent system modifications
  (symlinks, orphaned services, stray files) after deletion
- Remove superseded plugin-import-standards-report.md (recommendations are now
  integrated into the actual docs)
- Updated surfaces: AGENTS.md, AGENTS.plugins.md, developer/plugins.md,
  a0-create-plugin skill

---

update AGENTS.md and enhance agent-facing knowledge of A0

Enhanced the knowledge of the framework by removing the 1:1 copy of our GitHub README.md at the root and replacing it with a docs set for agents, to know more about Agent Zero without all the noise from URLs, explanations meant only for users.

Updated AGENTS.md accordingly.
2026-03-16 04:05:24 +01:00
Alessandro
0e8b11fc3f rm Instruments refs 2026-02-10 18:19:33 +01:00
Alessandro
4d9091ffaa rm Instruments refs 2026-02-10 18:18:23 +01:00
Alessandro
a76cd524fe optimize media; README.md; change structure
update mcp guides; better structure
cleanup media
update README.md and docs index
fix links in setup guide
update TOCs and usage
2026-02-10 17:38:02 +01:00
Alessandro
8adf165404 docs stack update part i 2026-02-10 17:38:02 +01:00
3clyp50
a03f7b9c53 Merge PR 861 skills 2026-02-02 10:52:46 +01:00
frdel
4932e12546 WebSocket merge 2026-02-01 16:07:45 +01:00
TerminallyLazy
672a749610 feat: add comprehensive SKILL.md skills and remove legacy instruments
## Skills Added
- brainstorming: Structured requirements exploration before implementation
- debugging: Systematic debugging methodology
- tdd: Test-driven development workflow
- code_review: Comprehensive code review checklist
- git_workflow: Git branching and collaboration best practices
- api_development: RESTful and GraphQL API design
- docker_devops: Container and CI/CD best practices
- database_design: Schema design and query optimization
- prompt_engineering: LLM prompt crafting best practices
- security_audit: OWASP-based security review
- create_skill: Wizard for creating new skills easily

## Changes
- Removed legacy instruments directory completely
- Updated README, docs, and knowledge files to reference skills
- Added skills_cli.py for easy skill management
- All skills follow open SKILL.md standard (Anthropic)
- Compatible with Claude Code, Cursor, Goose, Codex CLI, Copilot

## Usage
- Skills auto-load into memory via vector database
- Use `python -m python.helpers.skills_cli` for management
- Create custom skills in skills/custom/

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-26 08:06:52 -05:00
deci
2400dd5882 #81 - .env vars applied to settings 2025-12-09 16:47:16 -06:00
frdel
e567f0e3d8 Merge branch 'testing' 2025-11-19 12:31:00 +01:00
frdel
4c4de7ebca v0.9.7 - readme, docs 2025-11-19 10:41:07 +01:00
Alessandro
4725f8dab2
repo of the day badge to README.md 2025-11-06 15:56:03 +01:00
frdel
4283f5a937 Squashed commit of the following:
commit 55698f662e
Author: Alessandro <real.eclypso@gmail.com>
Date:   Mon Oct 6 17:55:37 2025 +0200

    fix Alpine init anti-patterns and clean globals

    - Remove manual init via 'alpine:init' from components
    - Drop store imports from index.html (components load their stores)
    - Replace Alpine.store() calls with direct ES module imports in index.js
    - Remove Alpine global accesses; broadcast connection status via CustomEvent
    - Bind scroll state to preferences store; UI sync via x-model

commit 709afbaf22
Author: Alessandro <real.eclypso@gmail.com>
Date:   Fri Oct 3 03:26:46 2025 +0200

    sidebar top/bottom component; remove tabs (chats/tasks)

    - remove tabs, unify chats/tasks
    - sidebar bottom section component
    - guards for speechStore and sidebarStore for double initialization
    - sidebar path order
    - logo fix

commit c8639d3312
Author: Alessandro <real.eclypso@gmail.com>
Date:   Thu Sep 25 01:39:56 2025 +0200

    CSS lift-and-shift and js cleanup

    - sidebar CSS lift-and-shift
    - chat input area CSS lift-and-shift
    - cleanup, docstrings, and finetuning CSS
    - quick fix for version info and newChat
    - pref panel header css fix
    - late-mount safe polling for pauseAgent button
    - task actions incapsulation
    - task actions extraction within component
    - fix enter handler for chat input
    - quick actions css lift
    - memory dashboard import

commit f99640c6b6
Author: Alessandro <real.eclypso@gmail.com>
Date:   Sun Sep 21 12:54:03 2025 +0200

    input area, progress bar and bottom actions componentize

    - componentize chat input area + action buttons
    - componentize sidebar top icons and cleanup
    - full screen input modal componentization
    - progress bar box component creation
    - legacy markup cleanup for input section
    - simpler updateProgress (index.js)

commit 356abe5853
Author: Alessandro <real.eclypso@gmail.com>
Date:   Mon Sep 8 15:20:23 2025 +0200

    sidebar componentize

    - left sidebar wrapper and css fine-tuning
    - chat list extraction, cleanup and path handling (sidebar)
    - updated and reordered paths for components extraction
    - uniform style blocks for pref component
    - unified context reference for killChat (chat lists fix)
    - tasks list initial extraction as component and tasksStore creation
    - quick actions component extraction
    - sidebar preferences component extraction

commit 30d0b5ae8d
Author: frdel <38891707+frdel@users.noreply.github.com>
Date:   Thu Oct 2 09:18:06 2025 +0200

    Update README.md

commit e7027ca1f4
Author: frdel <38891707+frdel@users.noreply.github.com>
Date:   Wed Oct 1 16:53:53 2025 +0200

    browser use allow http://

commit 0c837997f7
Author: frdel <38891707+frdel@users.noreply.github.com>
Date:   Wed Oct 1 09:12:14 2025 +0200

    bugfixing in memory detail modal

commit 74aba3eb8c
Author: frdel <38891707+frdel@users.noreply.github.com>
Date:   Wed Oct 1 08:42:31 2025 +0200

    fix memory detail sizing

commit 02d5d1e4cb
Merge: f09ea5b 57bf5e7
Author: frdel <38891707+frdel@users.noreply.github.com>
Date:   Wed Oct 1 08:23:54 2025 +0200

    Merge branch 'pr/740' into testing

commit 57bf5e7b16
Author: Alessandro <real.eclypso@gmail.com>
Date:   Tue Sep 30 15:08:39 2025 +0200

    modal body fix, mem-detail CSS polishing

commit f09ea5b21e
Author: frdel <38891707+frdel@users.noreply.github.com>
Date:   Tue Sep 30 11:26:20 2025 +0200

    memory dashboard - double toast fix

commit bd09a89bef
Author: frdel <38891707+frdel@users.noreply.github.com>
Date:   Mon Sep 29 21:39:51 2025 +0200

    memory dashboard polishing

commit 06c0dc97dc
Author: frdel <38891707+frdel@users.noreply.github.com>
Date:   Mon Sep 29 17:59:06 2025 +0200

    memory dashboard design polishing

commit 24d5756c7c
Author: Alessandro <155005371+3clyp50@users.noreply.github.com>
Date:   Mon Sep 29 15:35:59 2025 +0200

    css finetuning for memory dashboard

commit b81ed66743
Author: Alessandro <155005371+3clyp50@users.noreply.github.com>
Date:   Fri Sep 26 15:18:07 2025 +0200

    further css centralization and footer injection

    - mobile breakpoint change for mem dashboard (800=>960px)
    - css cleanup and globalization
    - final css cleanup

commit a6ce9c4404
Author: Alessandro <155005371+3clyp50@users.noreply.github.com>
Date:   Thu Sep 25 21:17:01 2025 +0200

    memory dashboard design

commit cd3bbf7062
Author: frdel <38891707+frdel@users.noreply.github.com>
Date:   Thu Sep 25 13:06:02 2025 +0200

    exclude embeddings from memory
2025-10-08 11:04:08 +02:00
frdel
30d0b5ae8d Update README.md 2025-10-02 09:18:06 +02:00
frdel
9c1fb67075 Update README.md 2025-09-03 10:55:25 +02:00
frdel
eb6f5f4f49 Update README.md 2025-09-03 08:52:16 +02:00
frdel
aa648f0f49 delayed memory recall 2025-08-08 16:58:49 +02:00
frdel
94f595eb2b connectivity and other docs 2025-08-07 15:39:05 +02:00
frdel
c177937f3b dev setup, guides, docs 2025-07-29 17:13:54 +02:00
frdel
2de45e6e63 video links update 2025-07-21 13:44:39 +02:00
frdel
69778c68da Merge branch 'testing' 2025-07-21 09:48:39 +02:00
frdel
1afbbfa79a Update README.md 2025-07-18 13:38:49 +02:00
frdel
6f99c80b7c Merge branch 'main' into testing 2025-07-18 13:36:14 +02:00
frdel
c76f53a7e7 Update README.md 2025-07-18 13:35:47 +02:00
frdel
f3db1658ae Merge branch 'main' into testing 2025-07-18 11:25:06 +02:00
frdel
dbe6b0fe7d repository namespaces update 2025-07-18 10:52:01 +02:00
frdel
a8aaa2609b Update README.md 2025-07-07 17:02:45 +02:00
frdel
970fcdc327 Update README.md 2025-07-07 10:05:10 +02:00
frdel
84bf8b24b1 Update README.md 2025-06-19 23:15:48 +02:00
frdel
4480c72a09 Update README.md 2025-06-06 16:15:33 +02:00
frdel
3467173f8d Update README.md 2025-06-06 11:42:19 +02:00
frdel
7a4946e5b5 readme + docs update 2025-05-27 10:12:00 +02:00
frdel
6a3320641a input tool terminals 2025-05-21 13:56:18 +02:00
Fidel
5ffe3615f6
Fix link to contribution.md (#373)
Fix link to contribution.md
2025-05-19 14:43:06 +02:00
frdel
bc9bc12402 Update README.md 2025-05-07 10:19:04 +02:00
frdel
64d0c9bf52 Update README.md 2025-05-04 08:59:27 +02:00
frdel
25978421dc Update README.md 2025-04-05 21:56:12 +02:00
frdel
8361e17345 Update README.md 2025-04-05 21:28:17 +02:00