{# One project row. Rendered by the dashboard grid loop AND by GET /api/projects/{name}/row for reactive insertion (no full-page reload). `idx` is the row's position for the search/cap visibility gate (0 from the fragment route, so a freshly created project is always shown). #}
{{ p.name }} {% if p.is_git_repo %}Git{% endif %} {% if p.has_claude_md %}CLAUDE.md{% endif %}
How do you want to drive it?

Connectable from claude.ai / Desktop — converse with it, and Stop it here when done.

{# Spawn only applies to the standard (multi-session) bridge — it maps to `claude remote-control --spawn`. pty is a single interactive session run under the keeper with no `--spawn`, so it ignores these; hide them in pty mode rather than offer no-op choices. #}
{% if pty_supported %}

Runs as one session in the project directory.

{% endif %}

⚠ Trust the files in {{ p.name }}? Launching a session here lets it run tools and execute any code in CLAUDE.md / .claude in this directory.

bypassPermissions lets sessions in {{ p.name }} run tools without asking. Type the project name to confirm.

— not managed by Clauster