@ai-setting/roy-plugin-task-show 0.6.11 → 0.8.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/README.md +121 -1
  2. package/dist/cli-tasks-adapter.d.ts +142 -0
  3. package/dist/cli-tasks-adapter.d.ts.map +1 -0
  4. package/dist/cli-tasks-adapter.js +379 -0
  5. package/dist/cli-tasks-adapter.js.map +1 -0
  6. package/dist/cli-tasks-tree-adapter.d.ts +143 -0
  7. package/dist/cli-tasks-tree-adapter.d.ts.map +1 -0
  8. package/dist/cli-tasks-tree-adapter.js +400 -0
  9. package/dist/cli-tasks-tree-adapter.js.map +1 -0
  10. package/dist/operations-cache.d.ts +44 -0
  11. package/dist/operations-cache.d.ts.map +1 -0
  12. package/dist/operations-cache.js +103 -0
  13. package/dist/operations-cache.js.map +1 -0
  14. package/dist/plugin.d.ts +14 -0
  15. package/dist/plugin.d.ts.map +1 -1
  16. package/dist/plugin.js +82 -0
  17. package/dist/plugin.js.map +1 -1
  18. package/dist/server.d.ts +30 -0
  19. package/dist/server.d.ts.map +1 -1
  20. package/dist/server.js +289 -89
  21. package/dist/server.js.map +1 -1
  22. package/dist/task-detail-mermaid.d.ts +171 -0
  23. package/dist/task-detail-mermaid.d.ts.map +1 -0
  24. package/dist/task-detail-mermaid.js +697 -0
  25. package/dist/task-detail-mermaid.js.map +1 -0
  26. package/dist/task-operations-html.d.ts +50 -0
  27. package/dist/task-operations-html.d.ts.map +1 -0
  28. package/dist/task-operations-html.js +187 -0
  29. package/dist/task-operations-html.js.map +1 -0
  30. package/dist/tasks-tree-cache.d.ts +44 -0
  31. package/dist/tasks-tree-cache.d.ts.map +1 -0
  32. package/dist/tasks-tree-cache.js +111 -0
  33. package/dist/tasks-tree-cache.js.map +1 -0
  34. package/dist/types.d.ts +16 -0
  35. package/dist/types.d.ts.map +1 -1
  36. package/dist/types.js.map +1 -1
  37. package/package.json +6 -1
  38. package/plugin.json +2 -2
  39. package/public/app.js +534 -34
  40. package/public/index.html +54 -21
  41. package/public/style.css +697 -1
  42. package/public/task-operations.js +290 -0
  43. package/public/tasks-tree.js +449 -0
package/public/index.html CHANGED
@@ -5,20 +5,66 @@
5
5
  <title>roy-plugin-task-show</title>
6
6
  <link rel="stylesheet" href="/static/style.css" />
7
7
  </head>
8
- <body data-live-refresh>
8
+ <body data-live-refresh data-view="tasks-tree">
9
9
  <header class="topbar">
10
- <h1>📊 roy-plugin-task-show</h1>
10
+ <h1>🌳 roy-plugin-task-show · Tasks Tree</h1>
11
11
  <p class="meta">
12
- Standalone landing page served by the visualization service. The plugin
13
- replaces the index when sessions exist.
12
+ Hierarchical view of <code>roy-agent</code> tasks (driven by
13
+ <code>roy-agent tasks tree --json</code>).
14
14
  </p>
15
15
  <p class="meta connection-status" data-connection>
16
16
  <span class="conn-dot conn-disconnected"></span>
17
17
  <span class="conn-label">Connecting…</span>
18
18
  </p>
19
19
  </header>
20
- <section class="panel">
21
- <h2>No sessions yet</h2>
20
+
21
+ <section class="panel tree-controls">
22
+ <div class="tree-controls-row">
23
+ <label class="tree-search">
24
+ <span>🔎</span>
25
+ <input type="search" data-tree-search placeholder="Filter by id or title (case-insensitive)" />
26
+ </label>
27
+ <div class="tree-filter-group" role="group" aria-label="Status filter">
28
+ <button type="button" class="tree-filter-btn is-active" data-tree-status="">all</button>
29
+ <button type="button" class="tree-filter-btn" data-tree-status="active">active</button>
30
+ <button type="button" class="tree-filter-btn" data-tree-status="todo">todo</button>
31
+ <button type="button" class="tree-filter-btn" data-tree-status="completed">completed</button>
32
+ <button type="button" class="tree-filter-btn" data-tree-status="paused">paused</button>
33
+ <button type="button" class="tree-filter-btn" data-tree-status="cancelled">cancelled</button>
34
+ </div>
35
+ <div class="tree-filter-group" role="group" aria-label="Priority filter">
36
+ <button type="button" class="tree-filter-btn is-active" data-tree-priority="">all priority</button>
37
+ <button type="button" class="tree-filter-btn" data-tree-priority="high">high</button>
38
+ <button type="button" class="tree-filter-btn" data-tree-priority="medium">medium</button>
39
+ <button type="button" class="tree-filter-btn" data-tree-priority="low">low</button>
40
+ </div>
41
+ <div class="tree-filter-group" role="group" aria-label="Tree actions">
42
+ <button type="button" class="tree-filter-btn" data-tree-action="expand">expand all</button>
43
+ <button type="button" class="tree-filter-btn" data-tree-action="collapse">collapse all</button>
44
+ <button type="button" class="tree-filter-btn" data-tree-action="refresh">↻ refresh</button>
45
+ </div>
46
+ </div>
47
+ <p class="meta tree-summary" data-tree-summary>Loading…</p>
48
+ </section>
49
+
50
+ <section class="panel tree-panel" aria-label="Task hierarchy">
51
+ <div class="tasks-tree" data-tasks-tree role="tree" aria-busy="true">
52
+ <p class="empty">Loading task tree…</p>
53
+ </div>
54
+ </section>
55
+
56
+ <section class="panel tree-legend">
57
+ <h2>How to read this tree</h2>
58
+ <ul>
59
+ <li>Each <strong>chevron (▶ / ▼)</strong> expands or collapses a node's children. By default the first <strong>three levels</strong> are open so the hierarchy is obvious at a glance.</li>
60
+ <li>Use <strong>expand all</strong> / <strong>collapse all</strong> at the top to control the whole tree, or click a single chevron to drill into one branch.</li>
61
+ <li>Filter chips restrict by <strong>status</strong> or <strong>priority</strong>; the search box matches against id or title.</li>
62
+ <li>Click any task title or id (<code>#1234</code>) to open its per-task detail page (tool-call flow + operations timeline).</li>
63
+ </ul>
64
+ </section>
65
+
66
+ <section class="panel tree-legacy-hidden" id="legacy-sessions" hidden>
67
+ <h2>Live tool-call sessions (legacy view)</h2>
22
68
  <p class="empty">
23
69
  The <code>roy-agent</code> host process has not recorded any tool
24
70
  calls yet. Trigger a session — for example by sending a message in
@@ -32,21 +78,8 @@
32
78
  <tbody></tbody>
33
79
  </table>
34
80
  </section>
35
- <section class="panel">
36
- <h2>How to read this page</h2>
37
- <ul>
38
- <li>The page subscribes to <code>/api/events</code> (SSE) for real-time updates.</li>
39
- <li>If the SSE connection fails, a 3-second polling fallback keeps the page fresh.</li>
40
- <li>Useful endpoints:
41
- <ul>
42
- <li><a href="/api/sessions">/api/sessions</a> — JSON list of recorded sessions.</li>
43
- <li><a href="/api/events">/api/events</a> — SSE event stream.</li>
44
- <li><a href="/static/style.css">/static/style.css</a> — bundled CSS.</li>
45
- <li><a href="/static/app.js">/static/app.js</a> — bundled JS.</li>
46
- </ul>
47
- </li>
48
- </ul>
49
- </section>
81
+
50
82
  <script src="/static/app.js"></script>
83
+ <script src="/static/tasks-tree.js"></script>
51
84
  </body>
52
85
  </html>