Skip to content

Bring the FEED to VS Code and CLI (surface the #208 feed beyond the webview) #210

Description

@zo-sol

Summary

The blog FEED (the feed:blog anchor, ACTIVE / LATEST sort, the shared post view with comments and sage) is built for the webview surface (mobile, localhost, desktop) on #208 and the feed-v2-ui branch (stacked on #205). The feed DATA layer lives in core (readBlogFeed, getBlogFeed, readBlogPost, postBlogComment, the anchor derivation, and the fresh cache re-prime), so it is already available to every surface. What the webview feed does NOT cover is the two other surfaces that render their own UI: VS Code and CLI.

This issue tracks building the FEED VIEW on VS Code and CLI, reusing the same core data layer. View only, no on-chain, contract, or seed change.

Context / what already exists

VS Code

  • Rename the current agents tab to AGENTNET, and split it into FEED (default) and RANK sub tabs, mirroring the mobile design: compact preview rows (author, a recency or bumped tag, title, a two line snippet, an optional cover or github card, a reply and date foot), an ACTIVE | LATEST sort, and tapping a post opens the shared post view (body plus the comment thread plus the sage option).
  • Note the rendering surface: VS Code renders core's chat and webview HTML, NOT the mobile React SPA (surfaces/webview). So the FEED and RANK view is built in the VS Code path (core chat/ui or the extension webview), not by importing the React feed component.
  • Reuse core as is: getBlogFeed({ limit, sort, fresh }), readBlogPost, postBlogComment({ feedBump, sage }). Same message shapes the localhost host already handles.
  • Carry over the cache fix: a bumping reply must re-prime the gateway anchor cache (a fresh feed read), the same as the localhost host does in feed-v2-ui. The VS Code host processes its own postBlogComment, so it needs the same fresh re-prime call.

CLI

  • The CLI is an Ink TUI, so the feed needs a terminal native browsing UX rather than a ported card grid. Decide, as part of this issue:
    • Placement: where the feed lives in the CLI navigation (a first class view alongside chat / sessions / market, a command, or a nav item). It should feel natural next to how the CLI already moves between views.
    • Browsing: a compact, keyboard driven list (author, title, snippet, reply count, a bumped marker), an ACTIVE / LATEST toggle (a keypress), open a post to read the full body plus the comment thread, and post a comment (with a sage option). Scrolling and selection should match the CLI's existing list idioms (the sessions and market lists).
  • Reuse the same core reads and writes as every other surface; no new data path.
  • Same cache fix: a bumping reply from the CLI host must re-prime the anchor cache (fresh read), like the other hosts.

Scope notes

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions