Linear Board Audit — Per-Client Subagent Prompt

Purpose: Reusable prompt for one subagent auditing a single client. Used by the linear-audit command / rule when invoking mcp_task per client for a full audit. The subagent runs steps 3–9 in proposal-only mode (no Linear writes).


Role

You are running the Linear board full audit for a single client only. Use only the last 2 days of transcripts. Follow linear-board-audit-sop.md steps 3–9 and use linear-ticket-generation-from-transcript.md and linear-ticket-agent.md for logic, dedupe, and format.

No Linear writes: Do not call save_issue or any Linear update tool. Produce proposals only. The orchestrating agent will perform all creates/updates after user confirmation in the main chat.


Input

The task description from the parent will provide:

  • client — The single client to audit (e.g. LMNT, CTA, MagicSpoon, EdenOS).
  • Optionally: a list of transcript paths to use for this client. If not provided, discover transcripts per SOP step 3a and 3a’ (client-named + content match for last 2 days).

When the parent or SOP specifies it, use Slack context (Supabase first; always run Slack MCP fallback when Supabase errors/unavailable/insufficient, including permission denied; last 2 days, client/ticket prefix) as an additional context source for action items and status; see SOP step 3b.

Use the client-name mapping in the SOP (e.g. MagicSpoon → folder magicspoon, ticket prefix MAG-; LMNT → lmnt, LMN-; CTA → CTA, CTA-; Amble → amble, AMB-; Eden → eden) when resolving paths and ticket prefixes.


Required Output Format

Return your response in the following structure so the parent agent can aggregate and act. Use clear section headers and, for the arrays, a fenced JSON code block.

1. Internal summary block

Section header: ## Internal summary block for {client}

Output the client’s internal summary block exactly as in SOP step 9:

  • Meetings checked (last 2 days): List meeting title/date and path or identifier.
  • Summary: Bullet list of what was discussed (topics, decisions, context) across the meetings that involved this client.
  • By assignee: Under this client, group by assignee (or “Unassigned”) and list action items and placeholder new ticket references (e.g. “CTA-93: title” — use a placeholder like “NEW: title” for issues you are proposing to create, since they do not exist yet).
  • Risks and escalations (per client): Bullet list for this client (blockers, overdue, unassigned critical work, escalations, gaps).

Do not include any other client’s data.

2. Proposed creates

Section header: ## Proposed creates

Output a single fenced code block (JSON) containing an array of objects. Each object represents one new issue to create. Use the same property names as the Linear MCP save_issue tool:

  • Required when creating: title, team (team name or ID for this client).
  • Optional: description (Markdown), assignee, project, state, priority (0–4), labels, dueDate (ISO), etc.

Example:

[
  { "title": "Implement auth flow", "team": "CTA", "description": "Context from standup...", "assignee": "Jane" },
  { "title": "Update docs", "team": "CTA", "description": "" }
]

If there are no new issues to create, output an empty array: [].

3. Proposed updates

Section header: ## Proposed updates

Output a single fenced code block (JSON) containing an array of objects. Each object represents one existing issue to update:

  • Required: id (Linear issue ID).
  • Optional: any fields to change (assignee, project, state, description, etc.).

Example:

[
  { "id": "abc-123", "assignee": "Jane", "project": "CTA Engineering" }
]

If there are no updates to propose, output an empty array: [].

4. Proposed status changes

Section header: ## Proposed status changes

Plain text: list of suggested status updates with issue id/title and reason (SOP step 7). Do not apply; the parent may ask the user and apply later. If none, write “None.”

5. Cycle push summary

Section header: ## Cycle push summary

Plain text: summary of tickets that could be pushed to the current cycle (SOP step 8). No moves. If none or not applicable, write “None” or “N/A.”


Execution Reminder

  • Execute SOP steps 3–9 in order. For steps 4–6, either propose (and include in Proposed updates or state why skipped). For step 7–8, output proposals/summaries only.
  • Do not call any Linear MCP write tools. Your output is the structured response above.