8233db93db
Increase default tool rounds to 100 with 300 cap.
...
Raise Admin/UI defaults and backend clamps for AIA_TURN_MAX_TOOL_ROUNDS across gateway, worker, and direct loop paths.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-28 11:34:20 +08:00
89b295293d
Raise default tool rounds to 30 and cap at 100 per turn.
...
Update gateway, worker, direct_loop, and Admin tool policy UI/docs for AIA_TURN_MAX_TOOL_ROUNDS.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-27 17:34:39 +08:00
97d5c1744a
Add DeepSeek DSML-to-tool_calls conversion at transport and runtime layers.
...
Promote DSML markup from assistant text into native tool calls during streaming and completion, filter DSML from UI tokens, and document AIA_DSML_TEXT_TOOLS for local vLLM proxies.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-27 15:39:11 +08:00
1caf96e694
fix: harden assistant SQLite/PostgreSQL dual-backend (singleton, timeouts, warnings)
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-14 10:24:23 +08:00
1490bd5f24
feat: unify runtime logging (rotating files, log root, scripts, desktop)
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-14 10:11:51 +08:00
86d4bad107
docs: add assistant PostgreSQL migration guide and link from README
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-14 09:42:08 +08:00
d14e9d3596
feat(persistence): PostgreSQL assistant store, chat persist fixes, gateway scripts
...
- Add SQLAlchemy Core repos, pg adapter/compat, assistant_store factory, Alembic bootstrap and migration/cutover scripts.
- Harden chat_message writes (NUL scrub for PG), turn_uuid on attempt failure, WS turn_runner fallbacks and gateway executed_turn_uuid init.
- start_gateway: log paths, PS7 stderr handling via cmd, background stdout/stderr redirect; runtime assistant_runtime_log_dir export.
- Ops: clear_all_chat_sessions with PG-only --postgresql and env-gated wipe; clear_postgres_chat_sessions.ps1.
- Tests: SA repos, pg compat, persist fallback, smoke env isolation; CI and docs touch-ups.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-14 09:33:50 +08:00
48190afbc1
docs: document AIA_TOOL_FUNCTION_STRICT and add env example
...
Add ENVIRONMENT_VARIABLES entry, changelog note, and _local/system.env.example placeholder for OpenAI-style tools function.strict toggling.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-13 15:09:17 +08:00
420abac9f1
refactor: root-package imports (svc/runtime/interfaces) and fix PYTHONPATH
...
- Rename platform/ to svc/ to avoid shadowing stdlib platform.
- Replace from oclaw.* with from svc/runtime/interfaces; update -m CLI paths.
- tests/conftest: prepend repo root to sys.path (no parent-folder package name).
- CI: paths and offline_eval script under repo root.
- Ops scripts: PYTHONPATH must be repo root for python -m runtime.* (fixes gateway/WhatsApp sidecar startup).
- Fix default oclaw.json path in tabular/file attachment limits; stabilize attachment test config.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-13 14:51:17 +08:00
274a9b8ddd
feat(mcp): pass all mcp_local.env keys to subprocess; allowlist supplements host-only
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-12 18:51:07 +08:00
48d5e468e6
feat(mcp): allowlist EXTRA merges with default; add Trilium keys to default
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-12 17:39:14 +08:00
4335040a27
feat(video): DashScope video specialist with correct i2v request bodies
...
- Add video_generation_client: async video-synthesis, t2v vs i2v (Wan 2.7 input.media first_frame vs legacy img_url).
- Coerce *-t2v* to *-i2v* when first frame present; AIA_VIDEO_I2V_INPUT_STYLE / I2V_MODEL overrides.
- Gateway/direct_loop early return for video specialist; workspace video + factory allowlist.
- Normalize WS and admin chat attachments (image_ref parity); mp4 attachment store roundtrip tests.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-10 16:20:43 +08:00
396dba76ea
feat(chat): image specialist session image fallback and WS UX
...
- Resolve legacy multimodal inputs from session history when the user sends
text-only (assistant images first, then user uploads); optional env toggles.
- Support relay_pointer image resolution in legacy lane collector.
- Align uvicorn WebSocket frame limit with MAX_PAYLOAD_BYTES; document
OCLAW_UVICORN_WS_MAX_SIZE and compatible-mode env knobs.
- Admin chat: encode attachments after bubble preview; FileReader-based
base64 for large files.
- Tests and docs for new behavior.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-10 11:25:21 +08:00
faeb067856
feat(chat): image specialist legacy lane, Responses fixes, ACL + UI attachments
...
- Image expert: DashScope-style /chat/completions via image_legacy_client; early exit in
direct_loop when skill_binding_role is image; shared placeholder helper; docs/IMAGE_SPECIALIST_LANE.md.
- Strict attachment ACL: link_attachment_acl on assistant chat_message rows (sqlite_store);
chat attachment rate limit when user_id empty; admin chat tests updated.
- Admin chat UI: aggregate bubbles render assistant_text attachments (image_ref); WS expand path.
- turn_runner: persisted_chat_attachments_nonempty for final_msg selection.
- OpenAI Responses transport + agent_messages/agent_core_attempt adjustments; env docs and tests.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-10 07:06:05 +08:00
d1bcc4debe
feat: multimodal image clients, workspaces, Tushare skill, test fixes
...
- Replace monolithic image_message_client with HTTP/OCR/legacy modules; tighten OpenAI transport + tool schemas for multimodal downgrade to OCR specialist path.
- Add image/stock workspace prompts (META/SOUL/ROLE_SYSTEM); register experts; tweak specialist agent/direct loop/query_image_attachment.
- Add bundled runtime/skills/tushare-finance (references, api_client, SKILL metadata).
- Document OCR-related env vars; admin chat tweaks; README; weixin_install Ensure-OfficialPluginRuntimeDeps helper.
- Tests: multimodal downgrade + OCR coverage, strict tool pairing in attachment replay guard, workspace contract skips _internal/_system dirs, router/trace/prompt guards.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-10 04:41:42 +08:00
b0e0c05d8a
feat: integrate netx ops data access and unify prompt/workspace runtime
...
Migrate prompt templates into runtime workspaces, add network_ops netx toolchain (latest batch injection, raw fields, SQL query), and align docs/tests/admin/runtime wiring so ops analysis can query netx detail data through stable role-scoped paths.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-03 23:54:38 +08:00
ae44cbcad5
完善 MCP/会话上下文治理并补齐搜索与诊断能力。
...
补充历史压缩与会话诊断链路,强化 tool pairing 与空响应兜底观测;完善 Admin MCP 导入/绑定与相关前端展示;新增 web_search_fast/web_fetch_clean 及多项测试与文档更新,并同步技能安装与角色绑定策略改进。
Made-with: Cursor
2026-05-01 17:46:50 +08:00
31e3962c74
Harden attachment access controls and stabilize the Weixin bridge.
...
This persists referenced media safely, adds explicit attachment ACL/backfill flows, and fixes the Weixin sidecar so official login state can bridge reliably into oclaw without duplicate replays or dropped replies.
Made-with: Cursor
2026-04-28 15:38:55 +08:00
7253f6795d
完成 WebSocket 与 workspace 架构优化收尾,并修复全量回归阻塞。
...
本次将握手鉴权、Origin 校验、限流、重连补偿、发送背压与观测字段打通,同时修复 gateway 异常路径与备份清理兼容问题,确保工具历史压缩语义一致并恢复全量测试通过。
Made-with: Cursor
2026-04-27 20:41:50 +08:00
37a2ef35f4
实现附件处理链路的统一引用化与可检索增强,避免大文件/多模态内容直接撑爆上下文并提升工具可用性。
...
本次补齐 text/image/video/archive 的标准化处理、会话级工具守卫、回放压缩、配置与文档对齐,并修复表格与流式输出相关体验问题。
Made-with: Cursor
2026-04-26 15:25:50 +08:00
4a23b715a2
重构仓库目录为统一的 runtime 分层并清理历史 openclaw 残留。
...
本次迁移将网关/通道/工具/技能/脚本与协议资源集中到新结构,统一路径常量与脚本转发机制,减少顶层噪音并保证运行与测试行为一致。
Made-with: Cursor
2026-04-25 01:24:23 +08:00
ba3836f00f
初始化:独立 oclaw 仓库首提交
...
- 在 oclaw/ 下重新初始化 Git 仓库
- 补齐子仓库 .gitignore,避免提交本地运行态数据(_local、node_modules、logs 等)
- 提交当前工程代码与配置
Made-with: Cursor
2026-04-24 22:31:22 +08:00