openqj
|
622c51e7fb
|
Merge pull request #274 from openqj/feat-searxng-freeze
websearch: 默认 auto 付费冻结,SearXNG 优先 + 显式解冻开关
|
2026-11-01 22:29:59 +08:00 |
|
openqj
|
0602d06136
|
Merge pull request #273 from openqj/feat-continue-gapfill
feat: continue gap-fill for search + browser (2a569ac follow-up)
|
2026-11-01 17:21:17 +08:00 |
|
openqj
|
2a569ac6e3
|
Merge pull request #272 from openqj/feat-platform-browser
feat: platform browser multi-tab, navigation allowlist, close cleanup, egress filter, allowlist worker wiring
|
2026-11-01 16:42:59 +08:00 |
|
openqj
|
847d1280c4
|
Merge pull request #271 from openqj/feat-code-search
websearch: scope=code programming search + provider extract chain
|
2026-11-01 16:38:31 +08:00 |
|
openqj
|
27f48fe1ed
|
Merge pull request #200 from openqj/feat-console-project-nav2
console: 项目导航移到左侧栏,工作台不再承担项目模块
|
2026-11-01 15:27:54 +08:00 |
|
openqj
|
aebc6238a6
|
Merge pull request #201 from openqj/feat-platform-auto-resume
feat: auto-resume platform-interrupted non-goal tasks
|
2026-10-30 15:51:43 +08:00 |
|
openqj
|
d6369154c2
|
Merge pull request #198 from openqj/feat-automation-edit
feat(console): automation panel edit and richer list
|
2026-10-30 15:38:59 +08:00 |
|
openqj
|
e2ce04ce4f
|
Merge pull request #197 from openqj/feat-stream-waiting
feat: browser stream waits through round gaps instead of disconnecting
|
2026-10-30 15:29:17 +08:00 |
|
openqj
|
92157ef421
|
Merge pull request #195 from openqj/feat-shared-home-mcp-sync
feat: sync shared-home MCP scripts on control-plane startup
|
2026-10-30 15:19:26 +08:00 |
|
openqj
|
671b4bedef
|
Merge pull request #194 from openqj/feat-project-tree
feat: project directory tree + first-round snapshot
|
2026-10-30 15:00:11 +08:00 |
|
openqj
|
4f035f0449
|
Merge pull request #186 from openqj/feat-console-llm-status
前端:任务详情 LLM 进度与失败原因标识
|
2026-10-30 14:46:24 +08:00 |
|
openqj
|
85f280e5e7
|
Merge pull request #193 from openqj/feat-software-engineering-github
feat: software-engineering skill GitHub guarantees
|
2026-10-30 14:40:30 +08:00 |
|
openqj
|
b3f4597d3f
|
Merge pull request #192 from openqj/feat-chromium-flags-quality
perf: Chromium 启动 flag 微调 + screencast 画质 q60→q50
|
2026-10-30 14:34:56 +08:00 |
|
openqj
|
878f8de7da
|
Merge pull request #190 from openqj/feat-remote-perf2
perf: 小优化组 + 恢复浏览器页签
|
2026-10-30 14:17:03 +08:00 |
|
openqj
|
c472078568
|
Merge pull request #189 from openqj/feat-software-engineering-skill
software-engineering skill v0.2: multi-client orchestration
|
2026-10-30 14:16:12 +08:00 |
|
openqj
|
5e562d8413
|
Merge pull request #188 from openqj/feat-screencast-full-fps
perf: screencast 隔帧改每帧,跟手优先
|
2026-10-30 13:58:35 +08:00 |
|
openqj
|
305e3b20bc
|
Merge pull request #187 from openqj/feat-bridge-perf
perf: 桥变化才写、stdin 优先、stream 50ms 轮询
|
2026-10-30 13:43:34 +08:00 |
|
openqj
|
e9370d7291
|
Merge pull request #185 from openqj/feat-browser-stream-first-frame
fix: navigate 后立即推一帧,静态页开流不再等重绘
|
2026-10-30 13:22:48 +08:00 |
|
openqj
|
b844624c96
|
Merge pull request #176 from openqj/feat-console-task-request-count
feat: 任务详情 LLM 请求数(cost_records 存 completions)
|
2026-10-30 13:05:30 +08:00 |
|
openqj
|
ad4384a08e
|
Merge pull request #184 from openqj/feat-mcp-stdin-starve-main
fix: MCP 主循环 stdin 批量行饥饿
|
2026-10-30 12:55:31 +08:00 |
|
openqj
|
2ff8975f43
|
Merge pull request #183 from openqj/feat-browser-filebridge
fix: 浏览器远控传输层改文件桥(Unix socket 在 runsc 下宿主不可见)
|
2026-10-30 07:35:46 +08:00 |
|
openqj
|
0c1cfcee31
|
Merge pull request #179 from openqj/feat-goal-convert-port
goal-convert / automation-create 移植:/goal 转换链 + 会话内标记工具
|
2026-10-30 07:28:45 +08:00 |
|
openqj
|
3a5c5db9fb
|
Merge pull request #182 from openqj/feat-browser-panel
feat: 控制台浏览器远控面板
|
2026-10-30 07:11:25 +08:00 |
|
openqj
|
80b32f25b3
|
Merge pull request #181 from openqj/feat-browser-phase2
feat: 浏览器二期后端:远控服务 + ref 快照 + server 代理
|
2026-10-30 06:51:20 +08:00 |
|
openqj
|
7bea8df512
|
Merge pull request #180 from openqj/feat-browser-phase1
feat: 浏览器一期:坐标点击 + live 截图
|
2026-10-30 06:27:46 +08:00 |
|
openqj
|
cb6de0e3aa
|
Merge pull request #178 from openqj/feat-playwright-mcp
feat: 浏览器自动化 MCP(Playwright)
|
2026-10-30 05:39:27 +08:00 |
|
openqj
|
58cbb198cf
|
Merge pull request #177 from openqj/feat-project-todos
项目待办 + LLM 标记工具:todos 接口、控制台待办页、todo/task-list/cost/files 标记与首轮注入
|
2026-10-30 05:22:54 +08:00 |
|
openqj
|
872b23a296
|
Merge pull request #175 from openqj/feat-project-memory-reuse
feat: 经验复用 MCP 暴露(项目记忆列/建/废弃)
|
2026-10-30 05:13:26 +08:00 |
|
openqj
|
c10fda4e4a
|
Merge pull request #174 from openqj/feat-repo-access-multi
feat: 仓库接入通用化(批量预检 + 多仓 ssh 别名)
|
2026-10-30 05:01:13 +08:00 |
|
openqj
|
6d49b72a9c
|
Merge pull request #173 from openqj/feat-docker-sandbox-strict
feat: Docker 沙箱 /tmp tmpfs 隔离 + 可选根只读
|
2026-10-30 05:01:09 +08:00 |
|
openqj
|
8d7651b0b7
|
Merge pull request #172 from openqj/feat-metrics-extended
feat: /metrics 可观测性扩展
|
2026-10-30 05:00:53 +08:00 |
|
openqj
|
903098de09
|
Merge pull request #171 from openqj/feat-cloud-mcp-more2
feat: 云端 MCP 工具 12→20
|
2026-10-30 05:00:50 +08:00 |
|
openqj
|
0787496427
|
Merge pull request #170 from openqj/feat-image-edit-mcp
feat: 图片改图 MCP 工具 image_edit
|
2026-10-30 04:12:46 +08:00 |
|
openqj
|
09880e8f4e
|
Merge pull request #79 from openqj/feat-app-max-permissions
feat: GitHub App manifest 扩到主机最大权限
|
2026-10-30 04:11:13 +08:00 |
|
openqj
|
5b03e0a85d
|
Merge pull request #169 from openqj/feat-console-redesign
console: 重排版为侧边导航 + 三栏工作台 + 任务详情内页签
|
2026-10-30 03:45:48 +08:00 |
|
openqj
|
f0aba700e0
|
Merge pull request #168 from openqj/feat-imagegen-mcp-basefix
fix: imagegen MCP env 必须写死本地网关 base URL
|
2026-10-30 03:15:59 +08:00 |
|
openqj
|
da7b8e3a4f
|
Merge pull request #167 from openqj/feat-imagegen-mcp
feat: 图片生成 MCP 工具 image_generate(中转站图片分组)
|
2026-10-30 03:03:07 +08:00 |
|
openqj
|
cf6721f427
|
Merge pull request #163 from openqj/feat-docker-timeout-evidence
feat(docker): 超时不再只剩一句 docker run timeout,留存 partial 与容器日志
|
2026-10-30 02:54:30 +08:00 |
|
openqj
|
27ca53465e
|
Merge pull request #162 from openqj/feat-task-result-full
feat(tasks): 完整结果另存 result_text_full,详情不再只剩 2000 字
|
2026-10-30 02:54:21 +08:00 |
|
openqj
|
4bbe6a99e3
|
Merge pull request #164 from openqj/feat-cloud-mcp-more
feat(mcp): 云端 MCP 工具从 8 个扩到 12 个
|
2026-10-30 02:47:36 +08:00 |
|
openqj
|
367b9d8873
|
Merge pull request #161 from openqj/feat-automation-audit-pg
fix(automations): 审计行不再显式插 TEXT id,PG identity 下不再丢审计
|
2026-10-30 02:47:28 +08:00 |
|
openqj
|
276d433da6
|
Merge pull request #166 from openqj/feat-console-pagination-tabs
console: 任务列表服务端分页 + 控制台分页面签
|
2026-10-30 02:38:35 +08:00 |
|
openqj
|
6a5a837aac
|
Merge pull request #165 from openqj/feat-doc-tools-result-cap
文档/图片工具进任务镜像 + 结果截断改为提取 text 上限 20000 字
|
2026-10-30 02:19:46 +08:00 |
|
openqj
|
9a11ef27b8
|
Merge pull request #159 from openqj/feat-cloud-mcp-server
feat(cloud): MCP 云端任务入口 + 上游 0.164 对齐配置
|
2026-10-30 01:55:43 +08:00 |
|
openqj
|
0c458cb2ce
|
Merge pull request #158 from openqj/feat-repo-access-check
feat(repos): 仓库接入预检 + codexsvc deploy key 配给脚本
|
2026-10-30 01:53:52 +08:00 |
|
openqj
|
aa5bf7da72
|
Merge pull request #157 from openqj/feat-final-audit-detail
fix(worker): 终态审计带上 error,复发卡死可定位
|
2026-10-30 01:53:39 +08:00 |
|
openqj
|
8d8774edee
|
Merge pull request #160 from openqj/feat-console-single-chat
console: 对话只留一处实时单列;任务列表与 API Key 加滚动上限、三栏等高
|
2026-10-30 01:52:45 +08:00 |
|
openqj
|
9ac0199eba
|
Merge pull request #156 from openqj/feat-cross-worker-kill
feat: 跨 worker 真 kill(kill_requests 意图表 + 收殓器)与自动化触发入闸
|
2026-10-30 01:40:05 +08:00 |
|
openqj
|
b306b56517
|
Merge pull request #155 from openqj/feat-chatgpt-codex-align1
ChatGPT Codex 对齐:技能包 + 租户播种 + web_search Docker 联网修法
|
2026-10-30 01:29:47 +08:00 |
|
openqj
|
3c80d277b0
|
Merge pull request #154 from openqj/feat-console-detail-cards
console: 任务详情改卡片式排版
|
2026-10-30 01:24:54 +08:00 |
|
openqj
|
6d4f87e286
|
Merge pull request #151 from openqj/feat-trace-truncation
trace: 标注被截断的链路消息,避免误读为模型未写完
|
2026-10-30 01:12:33 +08:00 |
|
openqj
|
fd9fe5f254
|
Merge pull request #153 from openqj/feat-auth-unknown-role
fix(auth): unknown project role denies instead of KeyError 500
|
2026-10-30 00:55:54 +08:00 |
|
openqj
|
284e821d0c
|
Merge pull request #152 from openqj/feat-console-task-detail-meta
console: 任务详情显示首字、总耗时、token 与自动成本明细
|
2026-10-30 00:50:08 +08:00 |
|
openqj
|
3696dad7c8
|
Merge pull request #146 from openqj/feat-task-files-tenant
fix: task files endpoint resolves tenant docker worktrees
|
2026-10-30 00:04:37 +08:00 |
|
openqj
|
d4a517fc7e
|
Merge pull request #150 from openqj/feat-console-task-meta
console: 任务列表行显示首字、总耗时、token(服务端列表补 total_tokens)
|
2026-10-29 18:38:36 +08:00 |
|
openqj
|
e5bf361c6d
|
Merge pull request #149 from openqj/feat-no-full-confirm
console: 新建任务选完全访问不再弹确认框
|
2026-10-29 18:17:16 +08:00 |
|
openqj
|
baf330f112
|
Merge pull request #148 from openqj/feat-console-goal-invincible
console: 增加 goal 模式无敌版勾选
|
2026-10-29 18:05:19 +08:00 |
|
openqj
|
9961a251d1
|
Merge pull request #147 from openqj/feat-prestart-goal-logs
worker: 补漏:goal 路径的 docker 分段日志 + 审计任务 id
|
2026-10-29 17:52:30 +08:00 |
|
openqj
|
a17f0c7412
|
Merge pull request #145 from openqj/feat-prestart-logs
worker: 启动前分段日志(派发卡死可定位)
|
2026-10-29 17:33:05 +08:00 |
|
openqj
|
0129b0149a
|
Merge pull request #144 from openqj/feat-neverstart-fresh
worker: 从未启动的任务自动续跑回落全新跑
|
2026-10-29 16:51:42 +08:00 |
|
openqj
|
a4586cbebc
|
Merge pull request #143 from openqj/feat-harness2-followups
harness2: per-role models, sweep batch, task file assets endpoint
|
2026-10-29 16:39:48 +08:00 |
|
openqj
|
9e444eca38
|
Merge pull request #142 from openqj/feat-state-lock
host: 修复断点丢失(tmp 碰撞 + 跨容器 flock 失效)
|
2026-10-29 16:04:12 +08:00 |
|
openqj
|
7425f2e778
|
Merge pull request #141 from openqj/feat-harness2-gaps
harness2: upstream gap fill — trivial fix, session budget, tag validation, preflight
|
2026-10-29 15:40:09 +08:00 |
|
openqj
|
4d16d63313
|
Merge pull request #140 from openqj/feat-longtask-p0-three
断点镜像状态标签回落:host-state 条目写 status 不是 goal_status
|
2026-10-29 15:37:51 +08:00 |
|
openqj
|
3d60f32bd3
|
Merge pull request #139 from openqj/feat-longtask-p0-three
长任务 P0 三件:断点进库、错误分类+熔断、Run/Step 时间线
|
2026-10-29 15:19:43 +08:00 |
|
openqj
|
d56bd3a99e
|
Merge pull request #138 from openqj/feat-harness2
harness2: recursive harness optimization wired to real codex tasks
|
2026-10-29 14:28:44 +08:00 |
|
openqj
|
b34812f605
|
Merge pull request #137 from openqj/feat-longtask-resume-guard
fix: 断点丢失时 goal-resume 拒绝成 failed,阻断自动恢复空转
|
2026-10-29 14:24:44 +08:00 |
|
openqj
|
e48b756f96
|
Merge pull request #136 from openqj/feat-longtask-invincible
无敌补齐:连续失败上限 + worker退出审计 + 配额恢复自动续跑
|
2026-10-29 13:16:49 +08:00 |
|
openqj
|
88fcfeebd3
|
Merge pull request #135 from openqj/feat-console-keys-ui
CI verify pass. Deploy follows separately via deploy.py.
|
2026-10-29 12:57:18 +08:00 |
|
openqj
|
49f3ff7cb6
|
Merge pull request #134 from openqj/feat-longtask-docker-resume-env
修法:Docker 断点续跑透传密钥环境(SUB2API_API_KEY 缺失空转)
|
2026-10-29 12:48:12 +08:00 |
|
openqj
|
c757810097
|
Merge pull request #133 from openqj/feat-longtask-auto-resume
长任务中断自动恢复:仅用户暂停才暂停,不限时
|
2026-10-29 11:48:22 +08:00 |
|
openqj
|
0ef896c317
|
Merge pull request #132 from openqj/feat-console-gapfix
console: 分栏改独立容器,修模块间空白间距
|
2026-10-29 11:04:22 +08:00 |
|
openqj
|
e7f7edf5c2
|
Merge pull request #131 from openqj/feat-readme-update
docs: README 对齐生产现状(main 93c25a9,补 PR #130 自适应分栏)
|
2026-10-29 10:48:52 +08:00 |
|
openqj
|
93c25a92bc
|
Merge pull request #130 from openqj/feat-console-adaptive
console: 按宽度自适应分栏(一栏/两栏/三栏)
|
2026-10-29 10:35:54 +08:00 |
|
openqj
|
4c3420ae8e
|
Merge pull request #129 from openqj/feat-console-github
console: GitHub 风格(Primer)
|
2026-10-29 10:21:44 +08:00 |
|
openqj
|
bbe02efc14
|
Merge pull request #128 from openqj/feat-console-dashboard
console: 一页式控制台排版 + 数据卡片
|
2026-10-29 10:04:17 +08:00 |
|
openqj
|
a13762cfbe
|
Merge pull request #126 from openqj/feat-chat-history
chat: 持久化继续消息,chat-history 交替历史
|
2026-10-29 07:07:34 +08:00 |
|
openqj
|
811912c841
|
Merge pull request #125 from openqj/feat-console-muse-style
console: 按 Muse 网页端/桌面端视觉重做
|
2026-10-29 06:58:11 +08:00 |
|
openqj
|
5ca5cc91cc
|
Merge pull request #124 from openqj/feat-console-react
console: React 生产级重写(左列表 + 中对话 + 右详情)
|
2026-10-29 06:38:35 +08:00 |
|
openqj
|
3f4e849a93
|
Merge pull request #122 from openqj/feat-pm-wait-deadlock
worker: always start capacity pool threads in run_all
|
2026-10-29 05:47:32 +08:00 |
|
openqj
|
ab0aaf4a5e
|
Merge pull request #121 from openqj/feat-child-model
feat: 子任务默认模型/强度(child_model/child_effort)
|
2026-10-29 05:35:51 +08:00 |
|
openqj
|
f99e667222
|
Merge pull request #120 from openqj/feat-marker-wait-heartbeat
worker: heartbeat parent task during marker poll/wait loops
|
2026-10-29 04:47:33 +08:00 |
|
openqj
|
fd2309686e
|
Merge pull request #119 from openqj/feat-git-pull-deploy
deploy: add git-pull source for host deployment
|
2026-10-29 03:45:27 +08:00 |
|
openqj
|
630d14fe07
|
Merge pull request #118 from openqj/feat-coord-running-leak
worker: release running slot after coordinator completes
|
2026-10-29 03:07:35 +08:00 |
|
openqj
|
a367da3ed0
|
Merge pull request #117 from openqj/feat-autoscaler-coord-guard
autoscaler: guard scale-down against live coordinators and busy victims
|
2026-10-29 00:37:44 +08:00 |
|
openqj
|
4cf5888f94
|
Merge pull request #116 from openqj/feat-automem-pg-replace
fix(db): register auto-memory tables in _OR_REPLACE_PK
|
2026-10-28 23:01:16 +08:00 |
|
openqj
|
ce83dcf586
|
Merge pull request #114 from openqj/feat-websearch-docker-env
fix: pass search env into Docker task containers (SEARXNG_URL was lost)
|
2026-10-28 22:22:55 +08:00 |
|
openqj
|
ffeed25f50
|
Merge pull request #115 from openqj/feat-rate-limit-retry-after
429 限流加 Retry-After 头
|
2026-10-28 20:22:11 +08:00 |
|
openqj
|
7279d0a81c
|
Merge pull request #110 from openqj/feat-marker-tools
任务内标记工具:task-create/task-poll/task-read、wait-threads、task-cancel/task-retry
|
2026-10-28 20:19:39 +08:00 |
|
openqj
|
eae9884b13
|
Merge pull request #111 from openqj/feat-coord-row-vanished
协调员行消失按中断处理:本体行消失即放槽,子任务行消失按 interrupted 合流
|
2026-10-28 17:46:23 +08:00 |
|
openqj
|
a0b6333f0c
|
Merge pull request #113 from openqj/feat-websearch-worker
feat: websearch MCP worker wiring + egress (public SearXNG route)
|
2026-10-28 17:36:22 +08:00 |
|
openqj
|
075908fe58
|
Merge pull request #112 from openqj/feat-websearch-mcp
feat: web search MCP v1 (oh-my-pi pattern, Python stdlib)
|
2026-10-28 17:21:19 +08:00 |
|
openqj
|
5026e75b2c
|
Merge pull request #109 from openqj/feat-goal-fail-resume
goal 异常退出记 interrupted,可断点续跑
|
2026-10-28 15:53:35 +08:00 |
|
openqj
|
d129f7bf8c
|
Merge pull request #108 from openqj/feat-auto-memory
云端身份记忆 + 自动提取注入:官方 memories 对齐(确定性 v1)
|
2026-10-28 12:19:17 +08:00 |
|
openqj
|
ea5ab6207c
|
Merge pull request #93 from openqj/feat-cost-notify-3
成本预算与失败通知第三批:G7 分层、G8 Docker 轮询掐断、G9 worker 忽略 host 预算、G13/G14 归属
|
2026-10-28 11:49:44 +08:00 |
|
openqj
|
ac553509ea
|
Merge pull request #107 from openqj/feat-thread-unarchive-noresume
fix: thread/unarchive 不再预 resume
|
2026-10-28 09:46:57 +08:00 |
|
openqj
|
5c9beb8a6d
|
Merge pull request #106 from openqj/feat-thread-unarchive
fix: thread/unarchive 走已归档解析(--archived 列表)
|
2026-10-28 06:30:17 +08:00 |
|
openqj
|
f5d6d6b9f0
|
Merge pull request #105 from openqj/feat-thread-resolve
fix: 线程解析按 home×provider 穷尽回退(共享 home + sub2api)
|
2026-10-28 05:45:43 +08:00 |
|
openqj
|
86eb43f1ca
|
Merge pull request #104 from openqj/feat-thread-lifecycle
feat: 线程生命周期对齐 15 项(bindings/refs/快照/心跳绑定/移交落点)
|
2026-10-28 05:04:53 +08:00 |
|
openqj
|
aee60fcb7d
|
Merge pull request #103 from openqj/feat-thread-wait-ops
feat: 线程等待与状态读取 8 项(wait/read/message/handoff/worktree/pr-checks/automation/sleep)
|
2026-10-28 04:43:02 +08:00 |
|