60 Commits

Author SHA1 Message Date
xiaoxixi
9ca78864a2 feat(config): add recovery and health diagnostics 2026-08-20 19:13:34 +08:00
xiaoxixi
93e74120ac feat(config): add model context window limits 2026-08-20 17:25:07 +08:00
xiaoxixi
2d7bd090fc feat(context): add checkpoint-based compaction 2026-08-20 16:52:03 +08:00
xiaoxixi
ff3d0ef773 feat(browser): preserve persistent sessions 2026-08-20 10:30:33 +08:00
xiaoxixi
c8cdce1ced feat(mcp): configure tool execution properties 2026-08-20 10:05:23 +08:00
4f35b4364d feat: deactivate broken sub-agent definitions instead of blocking startup
- AgentCatalog now records per-definition load errors (bad YAML, unknown
  provider/profile/model/tool/skill, or explicit delegate edge to an absent
  target) and excludes only the failing definition, never failing gateway
  startup or reload; config- and directory-trust-level errors stay fatal
- Explicit delegation to an absent target cascades to deactivate the
  delegating agent; `*` and implicit general-purpose delegation do not
- GET /api/agents lists broken definitions with parse/load errors so they
  can be fixed and re-enabled from the WebUI instead of disappearing
- WebUI shows an error banner on broken definitions, hides the enable switch,
  pre-fills the editor via lenient parsing, and re-enables on save
- Bump version to 1.16.0
2026-08-14 17:50:55 +08:00
38d92d5883 feat: move default db to config dir, add skill/mcp enable toggles
- Store default SQLite database at <config_dir>/data/picobot.db instead of
  the workspace, keeping session data independent of the workspace; the
  reload equivalence check and docs follow the new default
- Add per-skill enable/disable persisted in <config_dir>/skills_state.json;
  skills default to enabled, disabled skills are excluded from prompts,
  listings, and get_skill at load time
- Add mcp.servers[].enabled (default true); disabled servers are skipped
  at activation and by health checks
- WebUI Tools page: switches for Skills and MCP servers, plus a concrete
  MCP tool list with connection status and errors
- Add PUT /api/skills/{name} API and expose enabled/tool details in the
  skills/status APIs
- Bump version to 1.15.0
2026-08-13 21:58:20 +08:00
7de7a40de7 feat: add sub-agent hot reload to settings, polish definition editor
- rename settings tab and editor labels (子代理定义 → 子代理, 可继续委托给 → 递归委托)
- show available sub-agents as selectable tags when delegation is a list
- fix edit button text wrapping next to the enable switch
- add hot reload button + phase status polling to the sub-agent pane
2026-08-13 18:26:23 +08:00
b2574dc7af feat: add sub-agent activity WebUI with streamed run transcripts
Restructure the WebUI around sub-agent activity: move definition management into Settings, turn the agents page into a live activity monitor with a read-only detail view, and slim the tasks page to scheduled jobs only. Persist incrementally streamed per-run transcripts in a new agent_run_messages table (schema v9, version-gated drops preserve v8 run history) and expose them via GET /api/agent-runs/{id}.
2026-08-13 18:07:56 +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
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
ac0a0c42ad feat(webui): Fluent 2 mica/acrylic materials, acrylic topbar overlay, token consistency
- Restore official light neutral background ramp; add danger hover/pressed and warning-border tokens; drop dead --edge
- Mica ambient brand-tinted backdrop; acrylic sidebar/topbar/flyouts with reduced-transparency fallback
- Content and session rail scroll under the acrylic topbar (--topbar-h driven offsets)
- Global .danger-solid, shared .chip/.dot, card hover lift, radius/type ramp normalization; bump to 1.5.1
2026-08-06 14:05:13 +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
4cc4ff6772 chore: release version 1.4.0 2026-07-28 23:51:30 +08:00
1c1b96f5d4 前端设计语言改成fluent2风格。增加主题色设置。 2026-07-27 22:25:59 +08:00
c1a6660313 feat(webui): typography scale, surface depth, motion and unified nav icons
- Replace static Space Grotesk weights with a variable font (300-700) and
  bump the type scale across all tiers for a clearer weight hierarchy
- Add dot-grid texture, ambient glow, layered shadows with machined edge
  highlights, and entrance/hover/press micro-interactions (reduced-motion aware)
- Refine sidebar and session list: sliding amber active indicator, search
  focus ring, SESSIONS label header, living status dot, backdrop-blurred bars
- Replace inconsistent glyph icons with a unified Lucide-style SVG icon set;
  rename 工具&Skills to 工具 and enlarge nav font
2026-07-26 23:46:10 +08:00
3263fac7a3 chore: set version to 1.3.0 2026-07-26 22:39:55 +08:00
80fbc7fd25 chore(release): P3 configuration 2026-07-26 22:27:23 +08:00
7a845cffd5 feat(webui): enhanced settings page with outline, reload status, hot reload 2026-07-26 22:25:01 +08:00
c6a3814530 chore(release): P2 logs and data 2026-07-26 22:18:58 +08:00
ee5bc46cc6 feat(webui): enhanced tasks page with countdown and status dots 2026-07-26 22:17:27 +08:00
f0ef14099d feat(webui): editable memory page with delete confirmation 2026-07-26 22:09:01 +08:00
652a837e88 feat(webui): real-time streaming logs page 2026-07-26 22:04:42 +08:00
038854afa1 chore(release): P1 observability 2026-07-26 21:43:33 +08:00
4621210484 feat(webui): wire overview and tools pages 2026-07-26 21:41:16 +08:00
266fb8c5e9 feat(webui): tools and skills browser 2026-07-26 21:40:37 +08:00
0b02fd580b feat(webui): overview runtime dashboard 2026-07-26 21:35:22 +08:00
6e719e7fcb feat(webui): sparkline, capacity meter, metric tile components 2026-07-26 21:31:14 +08:00
719f586900 fix(webui): activity spine bright in both themes and CSP-safe dots 2026-07-24 11:06:25 +08:00
54ad4617c7 chore(release): P0 webui foundation 2026-07-24 10:51:35 +08:00
d9e3245031 feat(webui): refactor chat page onto global client and Signal Deck 2026-07-24 10:26:05 +08:00
14ca5dd7b4 feat(webui): app shell with flat nav, activity spine, and theme init 2026-07-24 10:01:07 +08:00
c64984b496 fix(webui): reset connected flag on manual disconnect 2026-07-24 09:51:59 +08:00
8dc5889b87 fix(webui): activity spine effect loop and chat client socket race 2026-07-24 09:47:52 +08:00
79821e11d5 feat(webui): global activity spine 2026-07-24 09:33:48 +08:00
33dab85c1c feat(webui): global chat websocket client 2026-07-24 09:33:17 +08:00
47e497867f feat(webui): theme helpers 2026-07-24 09:32:52 +08:00
fbffc67638 fix(webui): light-theme contrast and token consistency 2026-07-24 09:27:46 +08:00
be9fe07c27 feat(webui): Signal Deck design tokens and base styles 2026-07-24 09:18:25 +08:00
3118083707 feat(webui): embed latin fonts and serve via /fonts route 2026-07-24 09:06:48 +08:00
0d61354ba1 feat: add gateway configuration hot reload 2026-07-21 12:59:46 +08:00
e7ed95d7b2 chore(release): bump version to 1.2.2 2026-07-20 00:12:25 +08:00
4b0d5e41c6 feat(webui): render image attachments inline 2026-07-20 00:11:51 +08:00
76de8139de perf: calibrate turn history incrementally 2026-07-19 13:51:14 +08:00
07b09ca486 版本号变更 2026-07-19 12:50:31 +08:00