$npx -y skills add testdouble/han --skill investigate-to-confluenceRuns an evidence-based investigation of a bug, failure, or unexpected behavior with investigate and publishes the resulting investigation report to a user-specified Confluence location. Use when the user wants something debugged, diagnosed, or root-caused AND the findings posted
| 1 | # Investigate to Confluence |
| 2 | |
| 3 | This skill runs an evidence-based investigation with the core `han-coding:investigate` |
| 4 | skill, lets the user review the resulting report, and then publishes it to a |
| 5 | Confluence location that **the user must specify**. It is a thin orchestrator: |
| 6 | the investigation work belongs to `han-coding:investigate`, and the publishing work |
| 7 | belongs to `han-atlassian:markdown-to-confluence`. This skill only validates its inputs, |
| 8 | runs the investigation to a temporary file, gets the user's review and publish |
| 9 | choice, and hands the file to the publisher. |
| 10 | |
| 11 | `han-coding:investigate` produces a **single** report file (the investigation plan: |
| 12 | problem statement, evidence summary, root cause analysis, planned fix, validation |
| 13 | results, and summary). It does not produce companion artifacts, so this skill |
| 14 | publishes that one file as a single Confluence page — the single-page sibling of |
| 15 | `han-atlassian:project-documentation-to-confluence`, not the parent-plus-children tree of |
| 16 | `han-atlassian:plan-a-feature-to-confluence`. |
| 17 | |
| 18 | The five steps below are the whole skill. It does not resolve Confluence pages or |
| 19 | call the Confluence MCP create/update tools itself; `han-atlassian:markdown-to-confluence` |
| 20 | owns all of that. |
| 21 | |
| 22 | ## Step 1: Validate Inputs |
| 23 | |
| 24 | Confirm the skill has everything it needs before spending effort on an |
| 25 | investigation: |
| 26 | |
| 27 | 1. **Atlassian MCP reachable (hard requirement).** Call |
| 28 | `mcp__claude_ai_Atlassian__getAccessibleAtlassianResources` to confirm the |
| 29 | server is connected and retrieve the cloud ID(s). If the tool is not |
| 30 | available, the call errors, or it returns no accessible resources (typically |
| 31 | an authentication or configuration problem), **stop immediately**. Tell the |
| 32 | user this skill requires the Atlassian MCP server to be installed, configured, |
| 33 | and authenticated, and that they can re-run it once it is connected. Do not |
| 34 | fall back to a local-only run; for a local-only investigation, point them at |
| 35 | `han-coding:investigate`. This preflight runs first so a missing server fails |
| 36 | before any investigation work begins. |
| 37 | 2. **A symptom or question to investigate.** Confirm the request names a bug, |
| 38 | failure, error, integration, or unexpected behavior to investigate. This — |
| 39 | together with any relevant conversation context — is forwarded to |
| 40 | `han-coding:investigate` verbatim in Step 2. If the request is too thin to |
| 41 | start, let `han-coding:investigate` run its own investigation rather than |
| 42 | pre-empting it here. |
| 43 | 3. **A Confluence destination.** Confirm the request provides a target location: |
| 44 | a **Confluence page URL** (to update that page, or create a child under it), |
| 45 | or a **space** (key or name) plus an optional **parent page**. If none was |
| 46 | provided, ask for one with `AskUserQuestion`, explaining plainly that the |
| 47 | skill needs an exact destination because it does not search Confluence. Do not |
| 48 | resolve the page tree here — only confirm a location was given. Carry it |
| 49 | through to Step 5; `han-atlassian:markdown-to-confluence` resolves it. |
| 50 | |
| 51 | ## Step 2: Produce the Investigation Report to a Temporary File |
| 52 | |
| 53 | Invoke the `han-coding:investigate` skill with the **Skill** tool, **forwarding all |
| 54 | provided context** verbatim: the symptom or question, any known reproduction |
| 55 | steps or error messages, any suspected entry points, and the relevant |
| 56 | conversation context. Do not summarize, trim, or reinterpret the user's context; |
| 57 | pass it through so `han-coding:investigate` runs exactly as it would on its own |
| 58 | (parallel investigators, conditional specialist analysts, adversarial validation, |
| 59 | and the final report) — **except** add two explicit instructions: |
| 60 | |
| 61 | - It must write the resulting investigation report to a file under `/tmp/` (for |
| 62 | example `/tmp/<symptom-slug>.md`) rather than into the project's docs or plans |
| 63 | directory. This keeps the working report out of the repo until the user decides |
| 64 | to publish it. |
| 65 | - It must **stop after producing the re |