Commit graph

23 commits

Author SHA1 Message Date
Alessandro
bcdc99e6cc Clarify optional memory plugin docs
Remove memory-plugin assumptions from root and non-plugin DOX contracts so disabled plugins are not implied as available runtime behavior.

Keep the memory plugin documented only in its owning plugin subtree and mark it optional from the parent plugin index.
2026-07-02 17:29:40 +02:00
Alessandro
4b49386f96 Refactor a0-development into grounded references
Split the monolithic a0-development skill into a lean entry point plus focused reference files for runtime, DOX, tools, extensions, API/WebUI, profiles, prompts, skills, projects, and plugin workflow.

Update the skill DOX ownership for the new references directory and clarify the root framework-vs-agent Python runtimes plus port-discovery guidance.

Verified with git diff --check, targeted skill/tool tests under PYTHONPATH, and live localhost:32769 skill loading/read_file checks before committing.
2026-06-23 17:51:43 +02:00
frdel
afdc3aeb44 Add protocol prompt area before history
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
Introduce a new prompt "protocol" separate from extras: add LoopData.protocol_temporary and protocol_persistent, include protocol contents before message history during prompt construction, and clear temporary protocol data each turn. Add helper _build_context_message to render protocol/extras, update response input conversion to include protocol, and move project instructions & active/loaded skills injection into protocol. Update docs, prompts, plugin metadata, the SkillsTool message, and add tests to verify protocol placement and behavior.
2026-06-18 21:42:06 +02:00
Alessandro
3d4c302185 Solidify LiteLLM global kwargs handling
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
Limit LiteLLM module mutation to documented global switches such as drop_params, while preserving configured LiteLLM kwargs as per-call options. Avoid freezing global kwargs into provider defaults so runtime settings remain current, and extend focused tests for drop_params, additional_drop_params, and provider default behavior.
2026-06-12 03:27:49 +02:00
Alessandro
b3b5e44cc3 Patch LiteLLM security pins
Upgrade LiteLLM to 1.88.1 so Agent Zero is above the CVE-2026-42271 patched floor, and move the OpenAI SDK pin to 2.41.1 to satisfy LiteLLM's new dependency range.

Pin Starlette to the patched 1.0.1 release for the Host-header request.url.path advisory.

Fold requirements2.txt back into requirements.txt now that browser-use is no longer part of the repo dependency set, and update installer and setup docs to use a single requirements file.
2026-06-11 03:47:58 +02:00
frdel
77f7aa0274 Time Travel workspace selector + LiteLLM globals
Add selectable workspace support to the Time Travel plugin and introduce normalized global LiteLLM configuration handling.

models.py: add DEFAULT_LITELLM_GLOBAL_KWARGS and helpers to normalize, load, apply, and merge LiteLLM global kwargs; call configure_litellm/set per-call merges in LiteLLM wrappers so framework defaults, configured globals, and per-call overrides combine correctly. Add tests to assert merging and runtime application.

plugins/_time_travel: update docs and plugin metadata to describe workdir/project selection. API handlers now accept workspace_id and a new history_workspaces endpoint lists selectable workspaces. helpers/time_travel: implement workspace listing, selection, and resolution logic (workdir/project options, availability/locking, default selection). UI: add workspace picker to time-travel panel, wire selection/load into time-travel store, pass workspace_id to API calls, and add click hook to open the panel. Update styles and refresh/load behavior accordingly.

Tests: extend tests for LiteLLM global kwargs merging and adapt stream test to expect merged params; add tests for selectable workspaces, default selection, and locked external workdir handling.
2026-06-09 17:16:41 +02:00
frdel
175baa49db Add AGENTS.md DOX files and migrate docs
Introduce DOX (AGENTS.md) contracts across the repository to formalize ownership and local work contracts: adds .github/AGENTS.md plus AGENTS.md files for agents, api, conf, docker, docs, extensions, helpers, knowledge, lib, plugins, prompts, scripts, skills, tests, tools, usr, webui (and several subfolders). Update root AGENTS.md (content and last-updated date) to include DOX framework guidance and a child DOX index. Update .gitignore to allow usr/ and usr/plugins AGENTS.md files. Remove legacy deep-dive files under docs/agents (banners, components, modals, plugins) and migrate frontend/plugin references to webui/ and plugins/ DOX locations. Also adjust plugins/README.md and several skills/*/SKILL.md files to align with the new DOX layout.
2026-06-01 13:55:07 +02:00
Alessandro
5dd40db386 add banners agentic docs 2026-03-31 21:23:58 +02:00
Jan Tomášek
9390ba9624
Merge pull request #1344 from keyboardstaff/ws-rework
refactor: Comprehensive WebSocket System Rework
2026-03-30 16:45:49 +02: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
keyboardstaff
dae37ee0f6 Rebuild test suite & update documentation 2026-03-26 01:12:22 -07:00
Nicolas Leão
ccf7c7d971 update incorrect info on AGENTS.md 2026-03-25 13:51:29 -03: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
5ed58fb10f simplify plugin config modal opening
Move plugin config modal initialization into pluginSettingsStore.openConfig(), so callers only pass plugin name and optional scope. Resolve invalid project/agent scopes inside the store, initialize toggle state on the resolved scope, remove the old saveMode/core-save path, and delete stale saveMode guidance from docs and plugin skills.
2026-03-19 13:53:08 +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
frdel
a48ac95a29 feat(plugins): Add extensibility and hooks system to plugin API
Add @extension.extensible decorators to all plugin API handler methods and core plugin functions to enable extension points. Implement plugin hooks system allowing plugins to define custom behavior via hooks.py file. Add call_plugin_hook function to execute plugin-specific hooks for events like uninstall, save_plugin_config, and get_plugin_config. Introduce uninstall_plugin function that calls uninstall hook before deletion. Move circular
2026-03-12 13:21:33 +01:00
frdel
a807e2458b Use prototype-based context for plugin settings
Refactor plugin settings to use a per-modal prototype/context instead of binding directly to the global store. Introduces pluginSettingsPrototype (renamed export) and a lightweight instantiate helper (Alpine.magic('instantiate')) to clone the prototype into a modal-local context. Plugin config HTMLs (code_execution, infection_check, memory, text_editor) now bind UI fields to config.* and use context.* for modal-level state and actions; plugin settings components (plugin-settings.html, plugin-configs.html, plugin-settings-store.js, pluginListStore.js) were updated to create and consume the local context and to pass context into nested modals. Documentation and the SKILL guide were updated to describe the new modal contract and usage. This change scopes settings UI state to modal instances, enabling safer local state and easier integration with core-setting wrappers (use context.saveMode = 'core').
2026-03-09 21:19:55 +01:00
frdel
d02dda3667 BIG PYTHON REFACTOR
Python scripts moved out of python/ folder to root to be unified with plugins

+ frontend extension around api calls
2026-03-05 17:28:11 +01:00
Alessandro
c51f313d94 docs: update plugin docs and skill
update plugin skill and docs
2026-03-03 19:07:16 +01:00
Alessandro
8639069104 update docs, skill and enhance activation model
- Updated documentation to reflect the new plugin structure and activation rules.
- Refactored activation rules related code in the API and frontend to accommodate the new plugin settings and activation logic.
- Added support for clearing per-scope overrides when toggling plugins.
2026-02-24 15:23:14 +01:00
Alessandro
6f6348850d update agents, human docs, plugin skill 2026-02-22 19:37:42 +01:00
Alessandro
604078376f align plugin schema, config API actions, and plugin list UI 2026-02-20 08:32:17 +01:00
Alessandro
a13b81a9a1 update docs, AGENTS.md and skill 2026-02-20 08:27:00 +01:00