Commit Graph
4 Commits
Author SHA1 Message Date
xiaoli-cli 9a711dc809 feat: 新增浏览器自动化插件 (browser_auto)
基于 Playwright 的无头浏览器操控,33 个操作:
- 连接: start/stop/status
- 导航: open/back/forward/reload/title/url
- 交互: click/fill/select/check/hover/press
- 提取: text/html/attr/value/eval/query
- 截图: screenshot (全页/元素)
- 等待: wait/wait-gone/wait-url
- 高级: pdf/cookies/set-cookie/viewport/download

测试: 101 个用例全部通过
2026-04-26 05:46:45 +08:00
xiaoli-cli d57517197f ci: 添加 GitHub Actions CI + 93 个测试
CI 工作流 (.github/workflows/ci.yml):
- lint: 语法检查 + ruff 代码检查
- test: 插件功能测试 (Python 3.10/3.11/3.12 矩阵)
- structure: 项目结构完整性 + 旧文件清理检查

测试覆盖 (tests/test_plugins.py, 93 个用例):
- 插件加载: 13个插件 × 4项检查 (导入/类名/方法/tool_info)
- code_editor: 9 个功能测试 (edit/read_range/find/ast/stats/diff...)
- git_tools: 3 个测试 (status/log/branch)
- cmd_executor: 5 个测试 (echo/python/拦截/超时/空命令)
- file_manager: 7 个测试 (list/read/write/copy/delete/mkdir/info)
- auto_engineer: 4 个测试 (metrics/security/complexity)
- task_manager: 6 个测试 (add/list/complete/delete/clear)
- 引擎: 4 个测试 (加载/旧文件清理)
- 核心模块: 3 个导入测试

修复: code_editor diff_text 解析器被 split 拆坏的问题
2026-04-26 05:40:09 +08:00
xiaoli-cli 48f5765c1f cleanup: 删除无用文件夹和缓存
- 删除 tests/(v2测试,引用已删除的xiaoli/core模块)
- 删除 开发文档/(v2开发文档)
- 删除 __pycache__/(Python缓存)
2026-04-25 21:18:35 +08:00
Xiaoli Dev ff53a89754 feat: 重写沙箱 + 完整测试套件 (192 tests)
沙箱 v2 - 多层隔离:
- AST 静态分析: 30+ 危险模式检测
- 子进程隔离: 独立进程执行 + 资源限制
- 网络阻断: socket 模块替换
- 模块白名单: 30 个安全模块
- 文件系统限制: 临时目录隔离
- SandboxResult 数据类 + 执行历史

测试套件 (8 个模块, 192 个用例):
- test_sandbox.py:     AST检查(47) + 沙箱执行(15) + 安全拒绝(20) + 超时(2) + 模式对比(3)
- test_conversation.py: 响应解析(13) + 思考标记(5) + 工具提取(10)
- test_config.py:       配置加载/保存/缓存/损坏处理(8)
- test_history.py:      历史CRUD/持久化/边界(12)
- test_engines.py:      引擎管理/加载/切换(14)
- test_plugins.py:      code_editor(10) + code_search(7) + git_tools(4) + tool_manager(7)
- test_integration.py:  沙箱+对话(2) + 历史+对话(2) + 安全链(3) + 提示词(1)
2026-04-25 11:43:47 +08:00