Skip to content

intake dashboard: collapsed copy-for-Claude block under every task - #232

Merged
Jammy2211 merged 1 commit into
mainfrom
claude/dashboard-task-copy-button-jw6cet
Aug 19, 2026
Merged

intake dashboard: collapsed copy-for-Claude block under every task#232
Jammy2211 merged 1 commit into
mainfrom
claude/dashboard-task-copy-button-jw6cet

Conversation

@Jammy2211

Copy link
Copy Markdown
Contributor

Picking a task from PyAutoMind/dashboard.md on a phone meant hand-selecting and copying a prompt path into a Claude Code chat. This teaches the dashboard renderer to give every task a copy button.

What changed

  • Every task bullet — Start-here picks, In flight, Parked, Planned, and all backlog sections — now nests a collapsed <details> block labelled 📋 copy for Claude containing a fenced code block. Fenced code blocks are the one element GitHub gives a native copy button (mobile included), so the flow on a phone is: tap the disclosure → tap GitHub's copy icon → paste into a Claude Code chat.
  • The copied payload routes Claude straight to the task:
    • prompt-file tasks copy /start_dev <prompt-path> (the command the page header already documents);
    • parked/planned registry rows prefer the prompt path named in their - prompt: field, and fall back to a /route resume|start the <parked|planned> PyAutoMind task <slug> … message when the row has no prompt file.
  • Page intro updated to explain the affordance; render_dashboard docstring and the intake skill doc updated to match.
  • The blank-line placement around the nested HTML is load-bearing (GitHub treats lines after </details> as raw HTML until a blank line, which would swallow the next bullet) — new contract tests pin the block shape, the in-flight/registry payloads, and that no bullet can be swallowed.

Testing

  • python3 -m pytest tests/ — 355 passed (4 new dashboard contract tests).
  • Regenerated the real PyAutoMind/dashboard.md with this renderer and eyeballed all sections; dashboard --check converges.

Merge order

Merge this before PyAutoLabs/PyAutoMind's companion PR (same branch name): dashboard_refresh.yml regenerates against PyAutoBrain main, so the regenerated page reads as stale until this lands.

🤖 Generated with Claude Code

https://claude.ai/code/session_01Xz3vShsEKjEUkRTPo3wHTg


Generated by Claude Code

Picking a task from dashboard.md on a phone meant hand-copying a path into
a Claude Code chat. Every task bullet (Start-here picks, in flight, parked,
planned, backlog) now nests a collapsed <details> block whose fenced code
block — the one element GitHub gives a native copy button, mobile included —
holds the paste-ready message that routes Claude to the task:
/start_dev <prompt-path>, or a /route message for registry rows with no
prompt file. Blank-line placement around the nested HTML is load-bearing
for GitHub's renderer and pinned by the new contract tests.
@Jammy2211
Jammy2211 merged commit 5c03d1c into main Aug 19, 2026
2 checks passed
Jammy2211 pushed a commit that referenced this pull request Aug 19, 2026
Follow-up to #232 on feedback from use: the per-task 'copy for Claude'
line doubled the page's height and repeated its label 150+ times. Each
task is now a single collapsed <details> row whose summary IS the task
line — a bare 📋 toggle at the left of the text, then the linked title
and facets — with the fenced /start_dev message hidden beneath it.
Summaries are HTML (markdown does not render inside <summary>), so
titles are escaped, backtick spans become <code>, and links become <a>
tags; contract tests updated to pin the new shape.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants