65 Commits

Author SHA1 Message Date
b13450498b refactor: remove sleep tool and wake-aware steering machinery
Drop the model-callable sleep tool and its TurnWakeup publisher/handle state. Async background completions and user input already inject through steer-at-safe-boundary or the queued continuation Turn, so the sleep path only misled agents into busy-waiting on non-actionable queue wakes. Cancellation still normalizes running tool blocks to Cancelled.
2026-08-13 18:08:07 +08:00
b558a0a99b feat: make sub-agent orchestration always-on, consolidate design docs
Remove the agent_orchestration enabled feature switch and root_delegates config; delegation edges now derive from the catalog's delegate_targets. Replace the four orchestration design/review docs with a single SUB_AGENT_DESIGN.md. Bump version to 1.13.0.
2026-08-13 18:07:32 +08:00
0813eb4e6d docs: add sub-agent activity WebUI design spec 2026-08-13 16:29:19 +08:00
5501c539fc feat: remove agent run groups, add WebUI agent definition management
- drop agent_run_groups table and group_id/scope_kind/scope_id columns (schema v8)
- remove group_id from AgentExecutionContext and recovery group counters
- flatten TasksPage background tab into a per-run list
- add WebUI Agents page with definition CRUD and inline provider/model
- bump version to 1.11.0
2026-08-13 14:03:01 +08:00
554d4b15ac feat: wire run quota and signal delivery persistence; remove redundant compat code
- RunQuota now enforced: background admission acquires the run permit
  (global→session) and the runner holds it until terminal commit;
  foreground never takes run permits so nested limit=1 cannot deadlock
- RuntimeAdmission activity guard held by background runners for the
  whole run; admission checked before any durable write
- signal_contract_json/signal_delivery persisted at run admission so
  definition-level steer delivery actually takes effect (was silently
  falling back to queue)
- terminal completion payload carries the run's emitted signal IDs
  (design §12.3) so the main Agent can recognise duplicates
- ROOT caller_scope_id is the literal "ROOT" (design §9.6)
- legacy general delegation returns a deprecation/migration hint

Cleanup:
- remove unused AgentCaller enum and run_parallel wrapper
- remove unreachable http_get_only prompt machinery (http_request is
  RootOnly and never enters sub-agent registries)
- drop never-read EmittedSignal fields; derive WakeupSource from
  TurnInputSource instead of duplicating match arms
- replace the /stop oneshot compatibility bridge with a plain turn_busy
  flag; the worker's forced-cancel path now selects on the cancellation
  token (implementation doc §11.1)

Version 1.8.0
2026-08-11 15:24:49 +08:00
ac201a3949 feat: durable agent orchestration with run persistence, inbox continuation, and signal/steer
- AgentCatalog/definitions with strict Markdown frontmatter, delegation graph,
  fail-closed tool scoping, and signal contracts
- structured cancellation (AgentError::Cancelled/TimedOut) across provider
  streams, tool batches, and sleep; /stop drives the same terminal state
- schema v6 run/group/inbox persistence with execution-ID conditional
  transitions and completion-slot reservations
- ExecutionGate separating run quota from provider/tool step permits
- background completion inbox with hidden-trigger continuation turns,
  fairness scheduling, lease release, dead-lettering, and activation recovery
- typed TurnMailbox with two-phase steer admission and atomic consumption at
  turn commit; /stop releases admitted steer events back to pending
- emit_signal tool with contract-enforced rate/dedupe/severity/size limits
- WS run/event projection (GetAgentRuns, AgentRunUpdated, AgentEventUpdated),
  /api/agent-runs* management endpoints, /api/tasks union, WebUI run tree
  and signal cards
- ChannelContext.durable_private persisted for continuation delivery reuse

Version 1.7.0
2026-08-11 11:51:20 +08:00
1acab7f890 Merge remote-tracking branch 'origin/main'
# Conflicts:
#	AGENTS.md
#	Cargo.toml
#	docs/ARCHITECTURE.md
#	resources/skills/about-picobot/references/architecture.md
#	src/agent/agent_loop.rs
#	src/session/session.rs
#	webui/package-lock.json
#	webui/package.json
2026-08-06 18:37:16 +08:00
f78347b600 docs: add sub-agent orchestration design 2026-08-06 18:22:39 +08:00
c02993ae2c feat: add same-turn steering and queued input 2026-08-06 11:41:37 +08:00
e45980a282 feat: add cancellable sleep tool 2026-08-06 08:38:43 +08:00
da5ee05311 feat: add session token and context statistics 2026-08-05 16:45:56 +08:00
efb0e7f0b0 docs: document persistent browser workflows 2026-07-28 23:51:30 +08:00
b1b8e2d923 feat: migrate browser tooling to agent-browser 2026-07-27 23:53:55 +08:00
1c1b96f5d4 前端设计语言改成fluent2风格。增加主题色设置。 2026-07-27 22:25:59 +08:00
1e984eef66 docs: add P3 configuration implementation plan 2026-07-26 22:21:54 +08:00
dff155a93c docs: add P2 logs and data implementation plan 2026-07-26 21:47:32 +08:00
038854afa1 chore(release): P1 observability 2026-07-26 21:43:33 +08:00
fa58e4d2f6 docs: record P1 observability progress 2026-07-24 18:32:33 +08:00
d25da1ea27 docs: add P1 observability implementation plan 2026-07-24 15:12:20 +08:00
83d1d792bb docs: add WebUI refactor spec and P0 implementation plan 2026-07-24 08:54:43 +08:00
0d61354ba1 feat: add gateway configuration hot reload 2026-07-21 12:59:46 +08:00
a2af5f9991 增加logo 2026-07-20 00:12:45 +08:00
b9195129b3 docs: describe same-turn media delivery 2026-07-20 00:12:12 +08:00
762fd16e3f 增加oneshot客户端,解决一次性对话和测试的支持。 2026-07-19 23:18:39 +08:00
23e0b3e7a6 fix(feishu): bound media and retry API requests 2026-07-19 16:02:01 +08:00
7e53fa658b fix(feishu): preserve reply and thread semantics 2026-07-19 15:52:53 +08:00
0512d91729 fix(feishu): harden websocket event processing 2026-07-19 15:47:27 +08:00
5d081e2580 fix(feishu): enforce inbound admission rules 2026-07-19 15:42:01 +08:00
76de8139de perf: calibrate turn history incrementally 2026-07-19 13:51:14 +08:00
76685c3983 refactor: normalize inbound channel context 2026-07-19 13:42:43 +08:00
355244a3d6 refactor: unify turn progress delivery 2026-07-19 13:36:42 +08:00
42fe650785 refactor: centralize turn input preparation 2026-07-19 13:34:12 +08:00
515a07ec1f refactor: route gateway messages concurrently 2026-07-19 13:28:53 +08:00
0c835db380 fix: observe terminal turn delivery 2026-07-19 13:23:01 +08:00
65ef919714 docs: design message flow refactor 2026-07-19 13:18:32 +08:00
7a5d95e786 merge: streaming turn architecture 2026-07-17 17:47:41 +08:00
7a3058d8b5 docs: finalize streaming turn architecture 2026-07-17 17:45:22 +08:00
55da3204f8 feat: coordinate live turn delivery 2026-07-17 15:56:52 +08:00
b7d9a41f94 docs: define streaming turn architecture 2026-07-17 12:57:35 +08:00
28a313bf21 docs: add memory system design proposal 2026-07-16 23:20:15 +08:00
e3b2ff2472 feat(config): load layered startup env files 2026-07-16 23:20:00 +08:00
a73f9edda2 支持工具读取图片并注入多模态模型 2026-07-16 19:07:56 +08:00
f4172fea38 实现tui和webui的附件收发,优化文件在消息中的处理 2026-07-16 17:49:51 +08:00
e37581c909 增加tui和web的配对码要求。 2026-07-16 15:18:21 +08:00
7a144cea8a 优化前端显示,渲染markdown、新增黑白主题 2026-07-15 18:16:18 +08:00
351af8870d 初步实现todo功能 2026-07-15 17:48:14 +08:00
9ac898acbb 扩充定时任务功能、实现类似其他agent软件的heartbeat功能 2026-07-15 16:36:10 +08:00
6e56a84054 增加命令补全 2026-07-15 14:00:36 +08:00
dba1a046c0 增加内嵌webui 2026-07-15 10:40:56 +08:00
89a1512350 新增service子命令 2026-07-14 16:10:08 +08:00