Repository navigation
feat: AgentOS 桌面包——AgentOS 运行时的桌面窗口化呈现(HTTP 轮询版) - #5
Closed
ShiningRay wants to merge 1 commit into
Closed
ShiningRay wants to merge 1 commit into
ShiningRay wants to merge 1 commit into
Conversation
按 agentos/docs/emerald-desktop-ui-design-2026-09-15.md 阶段一落地: - AgentOSDesk::LinkCore + LinkService(on_startup):唯一直连 AgentOS Observer(127.0.0.1:4470)的地方,2s 轮询 9 只读端点,数据落 Citrine Signal;窗口组件零 IO,只读 signal(PLAN D10 Service/View 双子) - 四个窗口 App:AgentWindow/ServiceWindow(多实例,argv[:endpoint])、 InboxWindow(Human 人话卡片流 + 质询内联回答)、WorldWindow(总览 + Registry 名单开窗,经 ShellLauncherBridge 桥到 shell.launch_app) - 互动:发任务(normal/urgent)、回答质询(:ask 自动翻译为 AgentOS Message::KINDS 的 task);启停/改队列等 control 交互留阶段二(WS) - 纯 CRuby 单测 22 项(内核归一/信号同步/四窗渲染冒烟),rake test 394 全绿,rake compile 通过 已知限制(见包 README):.emz 懒加载路径不支持多文件 entry;多实例 endpoint 窗口暂未做"已开聚焦"去重。
Owner
Author
|
改为独立分发,本 PR 作废。 AgentOS 桌面包不应长在 emerald 仓库里:包源码已迁到独立包仓库 让它真正能被安装所需的宿主能力(多 App 包、包内 Service 装载、 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
概述
按设计文档(agentos 仓库
docs/emerald-desktop-ui-design-2026-09-15.md)实现阶段一:把 AgentOS 运行时呈现为 Emerald 桌面上的一组窗口——每个 Agent / Service 一个专属窗口,实时展示状态、配置与会话流,并可互动(发任务、答质询)。本 PR 不含 AgentOS 仓库的任何改动(那边零改动,纯复用其 Observer HTTP 契约)。
组件(
examples/apps/agentos/,命名空间AgentOSDesk)LinkCore+LinkServiceEmerald::Service,on_startup):2s 轮询 AgentOS Observer(127.0.0.1:4470)的 9 个只读端点,数据落 9 个 Citrine Signal;离线自动降级。遵循 D10 Service/View 双子——窗口组件零 IO,只读 signalAgentWindow(:agentos_agent,多实例)ServiceWindow(:agentos_service,多实例)InboxWindow(:agentos_inbox,单例)WorldWindow(:agentos_world,单例)接线(
examples/desktop.rb):四 App 注册进桌面;LinkService注册进 ServiceHub 并幂等补跑activate_startup;ShellLauncherBridge把 World 窗口的ctx[:launcher].launch桥到DesktopShell#launch_app(裸AppRegistry#launch不开窗,D3)。协议适配细节:窗口侧语义
kind: :ask在LinkCore#build_post_body翻译为 AgentOSMessage::KINDS的task(不翻译会被 Observer 判 400)。验证
rake test:394 runs, 0 failures;rake compile通过已知限制(包 README 有详述)
docs/SPEC-endpoint-protocol.md).emz懒加载路径不支持多文件 entry(AppHost 单文件求值),分发前需合并