e.key === "Escape" && onClose()} >
e.stopPropagation()} onkeydown={(e) => e.stopPropagation()} role="dialog" aria-labelledby="prd-panel-title" tabindex="-1" >

PRD Creator

{#if $isGenerating} Generating tasks... {:else if $isLoading} Loading... {:else if $isLoaded} {$tasks.length} task{$tasks.length === 1 ? "" : "s"} {/if}
{#if onBackToWorkflow} {/if}
{#if $isGenerating}
⚙️

Generating Tasks...

Claude is breaking down your goal into actionable tasks and writing hikari-tasks.json. This will auto-reload when complete.

{:else if $isLoaded}
Goal: {$goal}
{#each $tasks as task, index (task.id)}
#{index + 1} handleUpdateTask(task.id, "title", (e.target as HTMLInputElement).value)} class="flex-1 bg-transparent text-sm font-medium text-[var(--text-primary)] border-b border-transparent hover:border-[var(--border-color)] focus:border-[var(--accent-primary)] focus:outline-none transition-colors py-0.5" placeholder="Task title" />
{/each} {#if $tasks.length === 0}

No tasks — all removed. Click Regenerate to start over.

{/if}
{:else}

Claude will analyse your goal and write a hikari-tasks.json file with 3–10 actionable tasks, each with a detailed prompt ready to execute.

{/if}
{workingDirectory}/hikari-tasks.json
{#if $isLoaded} {:else if !$isGenerating} {/if}