GALLO

01 / WINDOWS-FIRST MULTIMODAL COMPANION

JOI — PRESENCE

A machine learning how to live with you.

Joi explores what changes when an AI assistant gains continuity, boundaries, a character, and a visible way of acting inside a person's computer.

Joi 探索的是:当 AI 助手拥有连续性、边界、人格,以及在人的电脑里清晰可见的行动方式时,我们与它的关系会发生什么变化。

PERIOD
MAY — JULY 2026
ROLE
PRODUCT / DESIGN / DEVELOPMENT
STATUS
WORKING PROTOTYPE
STACK
PYTHON / TAURI / VUE / LIVE2D
01 / PROBLEM

How can an agent feel present without taking control away from the person beside it?

02 / RESPONSIBILITY

PRODUCT / DESIGN / DEVELOPMENT

03 / KEY DECISION

Separate planning, policy, memory, events, and tools—then expose actions as inspectable, interruptible states.

04 / OUTCOME

A working Windows-first companion prototype with approvals, character states, memory, and an observe → act → verify trail.

LIVE / WEB SESSION

Talk to her right here.

这是真正的 Joi,跑在为你单独启动的一份运行时里。向下滚动继续读,她会缩成右下角的桌宠跟着你—— 可以拖动,选中后滚轮缩放。

正在为你启动一份 Joi…

浏览器里的 Joi 只做对话、角色与记忆。看屏幕、操作电脑、写代码、玩 Minecraft 这些需要她住在你自己的机器上——那部分在上面的演示视频里。

REAL BUILD / THINKING → REPLY

A four-second loop cut from the working desktop build. The interface stays visible while Joi thinks and responds.

THE PRODUCT LOOP

Presence needs a legible loop.

在场感来自可理解的循环。

  1. 01OBSERVE

    Notice only what is in scope.

    Joi begins from the conversation and resources the person has deliberately placed inside the current project.

  2. 02PROPOSE

    Turn intention into a small next step.

    The system explains what it wants to do before a tool action becomes an invisible side effect.

  3. 03APPROVE

    Keep permission in the foreground.

    Reading, drafting, and sending are different boundaries. The person can stop the loop before control changes hands.

  4. 04VERIFY

    Show what changed.

    The result returns as a visible report and trace, not as a vague claim that the task is finished.

The Question

问题

Most assistants disappear between requests. Joi starts from the opposite premise: a useful companion should remember context, show intention, and remain interruptible while work is happening.

The character is not decoration. It is the visible edge of a system made from planning, memory, policy, tools, and review.

大多数助手会在请求之间消失。Joi 从相反的前提出发:一个有用的伴侣应该记住上下文、表达意图,并在工作发生时随时可以被打断。

角色并不是装饰,而是规划、记忆、策略、工具与复核机制共同构成的系统边界。

Presence Is a System

在场不是一个表情

A character can make an assistant recognizable, but recognition alone does not create presence. Presence comes from continuity: the same project, the same conversation, a visible state, and a clear boundary around what Joi can currently touch.

The Live2D body is therefore treated as part of the interface. Expression, attention, speech, and system state have to agree with the work happening beside it.

角色能让助手变得可辨认,但仅有角色并不会产生在场感。在场来自连续性:同一个项目、同一段对话、可见的状态,以及 Joi 当前能接触什么的明确边界。

因此 Live2D 不是贴在产品上的装饰。表情、注意方向、说话状态与旁边真正发生的工作必须一致。

A Legible Agent

让智能体可以被读懂

The Python core separates planning, policy gates, memory, events, and tool adapters. The Tauri and Vue shell translates that machinery into conversation, project resources, approvals, character states, and a developer audit view.

Computer Use actions preserve an observe, target, approve, act, and verify trail so automation remains inspectable instead of magical.

Python 核心把规划、策略网关、记忆、事件和工具适配器分开;Tauri 与 Vue 前端再把这些机制翻译为对话、项目资源、审批、角色状态与开发者审计视图。

Computer Use 操作保留观察、定位、确认、执行和验证记录,让自动化保持可检查,而不是神秘地发生。

Consent Is a State

同意不是一次弹窗

Approval is designed as a durable product state rather than a modal that interrupts the person at the last second. Joi can explain the intended action, wait, continue after consent, and report the exact result.

This makes autonomy graduated. Reading a selected thread, drafting locally, and sending something outward do not inherit the same permission.

审批被设计成一种持续的产品状态,而不是最后一刻突然打断用户的弹窗。Joi 可以先解释行动意图,等待确认,在获得同意后继续,并明确报告结果。

因此自主性可以分级:读取被选中的内容、在本地起草、向外发送,不会自动继承同一种权限。

Memory With Boundaries

有边界的记忆

Projects make memory concrete. A conversation can bind folders, websites, applications, or games, while the rest of the machine remains outside the relationship by default.

The goal is not to remember everything. It is to retain enough shared context to continue naturally without turning continuity into surveillance.

项目让记忆边界变得具体。一段对话可以绑定文件夹、网站、应用或游戏,而机器上的其它内容默认不进入这段关系。

目标不是记住一切,而是保留足够的共同上下文,让协作可以自然继续,同时不把连续性变成监视。

Where It Goes

下一步

The next milestone is not maximum autonomy. It is a convincing shared loop: Joi notices a context, proposes a small next step, waits for consent, acts, and checks what changed.

下一阶段的目标不是最大化自主性,而是建立一个可信的共同循环:Joi 注意到上下文,提出一个小步骤,等待确认,执行,并检查发生了什么变化。

NEXT PROJECTJOI MOBILE — WITH YOU