You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This workstream makes the MVP doctrine real: views are information surfaces the
agent (or the user via chat) drives; chat is the primary control surface. Every
view control must have a semantic chat action twin, so the view is a renderer of
state and the same mutation is reachable by typing, and — soon — by voice.
Doctrine / decisions adopted
Semantic actions over synthetic DOM. The generic agent-click/agent-fill
bridge (useAgentElement → view:interact) stays ONLY for third-party plugin
view bundles. Every builtin view mutation (settings, LifeOps, knowledge,
memories, files) must map to a registered agent action the planner can
discover and a test can drive headless.
Voice constraint drives today's design. Under bidirectional voice the agent
manipulates views as shared screen context and narrates what it changed — with
no DOM to click. So every view mutation is written as an action now, because a
click handler is throwaway the day voice ships. The gap list is exactly the set
of controls that would go mute under voice.
Research doc
Full inventory (view × interaction × chat-path), gap analysis, settings-section
write-coverage table, and the voice-first section: packages/docs/ongoing-development/research/06-views-chat-integration.md
Issue list
[views] Add consolidated SETTINGS action + wire every settings write through one use case — P0
[views] Add DOCUMENT chat action so the Knowledge view is a pure state renderer — P1
[views] Add MEMORY delete/forget chat action to pair the Memories view control — P1
[views] Add FILES list/delete chat action so FilesView delete has a chat twin — P2
[views] Ratchet: assert every builtin view on-screen mutation maps to a registered action — P2
Start with #1 (Settings is the biggest gap and unblocks the pattern). #2–#4 are
independent and parallelizable. #5 is confirm-then-extend (mostly verification). #6 lands last, after #1–#4 close the current gaps, so the baseline is small.
How to claim work
Comment on the issue you're taking (one owner per issue).
Before implementing, re-check the issue is still open and git log origin/develop
on the target files — the swarm merges fast and an action may already exist.
Branch feat/<slug>; PR against develop; sync (git fetch && git rebase origin/develop) before opening/updating.
Evidence rules (inline in the PR — the committed .github/issue-evidence approach is retired)
Post evidence INLINE in the GitHub issue/PR. MP4 videos render inline; use JPG
for screenshots (not PNG). For each issue attach what applies:
Real-LLM trajectory (live model, not the proxy/mock) showing the SEMANTIC
action firing — NOT agent-fill/agent-click on a builtin field. This is the
pass/fail signal for "views display, chat controls".
JPG before + after full-page screenshots, desktop AND mobile — including
the WRONG behavior for any bug (e.g. the control with no chat path).
MP4 walkthrough: type the control change in chat, watch the view update
live.
Backend [ClassName] ... logs showing the use case firing.
Domain artifact for state changes (document/memory/file/settings rows
before+after).
No page ships needs-work/broken. Any evidence row that doesn't apply is
marked N/A - <reason>, never left blank.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
-
This workstream makes the MVP doctrine real: views are information surfaces the
agent (or the user via chat) drives; chat is the primary control surface. Every
view control must have a semantic chat action twin, so the view is a renderer of
state and the same mutation is reachable by typing, and — soon — by voice.
Doctrine / decisions adopted
agent-click/agent-fillbridge (
useAgentElement→view:interact) stays ONLY for third-party pluginview bundles. Every builtin view mutation (settings, LifeOps, knowledge,
memories, files) must map to a registered agent action the planner can
discover and a test can drive headless.
children tap) but route each through the same use case as its action twin —
one write path, no divergent client-side mutation (Clean Architecture Replace OpenAI Whisper with Whisper Turbo #2/Replace GPT-3.5 with Node Llama3 #3).
Trajectories, Transcripts get navigation + read providers, never manufactured
write actions.
feat(workflows): seed default workflow on first run, remove create-workflow CTA, uniform header #13597): uniform top bar, no side panels, no suggestion chips,
agent-proactive-on-view-switch (
reportUserViewSwitch→VIEW_SWITCHEDalready fires), view-scoped actions. This workstream extends "view-scoped
actions" from navigation into mutation.
manipulates views as shared screen context and narrates what it changed — with
no DOM to click. So every view mutation is written as an action now, because a
click handler is throwaway the day voice ships. The gap list is exactly the set
of controls that would go mute under voice.
Research doc
Full inventory (view × interaction × chat-path), gap analysis, settings-section
write-coverage table, and the voice-first section:
packages/docs/ongoing-development/research/06-views-chat-integration.mdIssue list
Start with #1 (Settings is the biggest gap and unblocks the pattern). #2–#4 are
independent and parallelizable. #5 is confirm-then-extend (mostly verification).
#6 lands last, after #1–#4 close the current gaps, so the baseline is small.
How to claim work
git log origin/developon the target files — the swarm merges fast and an action may already exist.
feat/<slug>; PR againstdevelop; sync (git fetch && git rebase origin/develop) before opening/updating.Evidence rules (inline in the PR — the committed
.github/issue-evidenceapproach is retired)Post evidence INLINE in the GitHub issue/PR. MP4 videos render inline; use JPG
for screenshots (not PNG). For each issue attach what applies:
action firing — NOT
agent-fill/agent-clickon a builtin field. This is thepass/fail signal for "views display, chat controls".
the WRONG behavior for any bug (e.g. the control with no chat path).
live.
[ClassName] ...logs showing the use case firing.before+after).
No page ships
needs-work/broken. Any evidence row that doesn't apply ismarked
N/A - <reason>, never left blank.Filed issues
Design doc · MVP board
Beta Was this translation helpful? Give feedback.
All reactions