nandi/oripublic Fork 0
b6cd929ab1425a4ef6073ea9c189917cca02cf3c
Commits
Clone
git clone https://git.rickub.com/nandi/ori.git
git clone ssh://git@rickub.com/nandi/ori.git

Host key fingerprint (ed25519): SHA256:iycHnxEyq0Q7uyVpB7JlznP0G7JrTPXLYRcAU5CSLhc — verify it before your first connect.

forked from bots-garden/ori

PlanView.tsx · 39 lines · 1.2 KBTypeScript Blame HistoryRaw
✨ Introduce new feature(s): ACP web client — Go backend (agent, bridge, httpserver, mockagent) + React SPA (Zed-like agent panel), tests, quality gate PASS 2434cc7 k33g yesterday1/**
2 * PlanView renders the agent's current execution plan (ACP "plan" updates)
3 * as a compact checklist, like the plan block of Zed's agent panel.
4 *
5 * @example
6 * <PlanView entries={[{ content: "Read the code", priority: "medium", status: "completed" }]} />
7 */
8
9import type { AcpPlanEntry } from "../protocol";
✨ Workspace panel, selectors, previews, desktop app, sandbox template, resizable file tree, light/dark theme 76d62ac k33g yesterday10import { InlineText } from "./InlineText";
✨ Introduce new feature(s): ACP web client — Go backend (agent, bridge, httpserver, mockagent) + React SPA (Zed-like agent panel), tests, quality gate PASS 2434cc7 k33g yesterday11
12const statusMarks: Record<string, string> = {
13 pending: "○",
14 in_progress: "◐",
15 completed: "●",
16};
17
18export function PlanView({ entries }: { entries: AcpPlanEntry[] }) {
19 if (entries.length === 0) {
20 return null;
21 }
22 return (
23 <details className="plan" open>
24 <summary className="plan-summary">
25 Plan ({entries.filter((e) => e.status === "completed").length}/
26 {entries.length})
27 </summary>
28 <ul className="plan-entries">
29 {entries.map((entry, index) => (
30 // biome-ignore lint/suspicious/noArrayIndexKey: ACP plan entries carry no id and the list is replaced wholesale on every update.
31 <li key={index} className={`plan-entry plan-entry-${entry.status}`}>
32 <span aria-hidden>{statusMarks[entry.status] ?? "○"}</span>{" "}
✨ Workspace panel, selectors, previews, desktop app, sandbox template, resizable file tree, light/dark theme 76d62ac k33g yesterday33 <InlineText text={entry.content} />
✨ Introduce new feature(s): ACP web client — Go backend (agent, bridge, httpserver, mockagent) + React SPA (Zed-like agent panel), tests, quality gate PASS 2434cc7 k33g yesterday34 </li>
35 ))}
36 </ul>
37 </details>
38 );
39}