Investigate a Zendesk ticket by reading its content, searching for similar past tickets, checking internal docs, and gathering customer context. Use when the user mentions investigate ticket, look into ticket, ticket investigation, analyze ticket, or provides a Zendesk ticket number to investigate.
Deep investigation skill for a specific Zendesk ticket. Reads the ticket, searches for similar past cases, checks internal documentation, gathers customer context, and writes a structured investigation report.
Can be used standalone or triggered by the user during an investigation workflow.
Just say: "investigate ticket #1234567" or "look into ZD-1234567"
The agent will:
cases/ZD-{id}/ (README.md, notes.md, response.md, meta.json)If an agent receives a message matching any of these patterns:
Then:
investigate-prompt.md in this foldercases/ZD-{TICKET_ID}/Before processing ANY ticket data, check for the oai_opted_out tag:
.cursor/skills/_shared/zd-api.sh ticket {TICKET_ID}
If the output contains ai_optout:true:
This is a legal/compliance requirement. No exceptions.
user-glean_ai-code-read_document)cases/ZD-{id}/assets/flare/ and analyzed directly (status.log, config-check.log, etc.).
2.5. Local knowledge base — Search solutions/known-issues.md and archive/ for matching patterns before going externalcases/ZD-{id}/ with README.md, notes.md, response.md, meta.json, and assets/| Repo | What |
|---|---|
| datadog-agent | Core agent, config parameters, checks |
| integrations-core | Official integration checks |
| integrations-extras | Community integrations |
| helm-charts | Kubernetes Helm charts |
| datadog-operator | Kubernetes operator |
| documentation | Source for docs.datadoghq.com |
| Language | Repo |
|---|---|
| Python | dd-trace-py |
| Java | dd-trace-java |
| Node.js | dd-trace-js |
| Go | dd-trace-go |
| .NET | dd-trace-dotnet |
| Ruby | dd-trace-rb |
Key files for parameter lookup in datadog-agent:
pkg/config/setup/config.go — All config parameters with defaultscmd/agent/dist/datadog.yaml — Default config templatecomp/core/config/ — Config componentCase files are saved to cases/ZD-{TICKET_ID}/ in the workspace root:
| File | Purpose |
|---|---|
README.md | Quick reference card (ticket metadata, environment, links, related cases) |
notes.md | Investigation timeline with timestamped entries |
response.md | Customer response draft with TL;DR, response text, and internal notes |
meta.json | Machine-readable metadata (status, assignee, priority, issue_type) |
assets/ | Downloaded attachments (flares, logs, screenshots) |
assets/flare/ | Extracted flare contents (when applicable) |
The TSE Hub web dashboard at http://localhost:5098 automatically reads these files and displays the case.
Timeline entries (appended on each investigation):
### YYYY-MM-DD HH:MM — Initial Investigation (Agent)meta.json status is kept in sync with the Investigation Decision:
ready_to_review / investigation / reproduction → "status": "investigating"waiting → "status": "waiting-on-customer"Attachments are downloaded via osascript + Chrome JS (using .cursor/skills/_shared/zd-api.sh). Downloads land in ~/Downloads/ first, then are moved to cases/ZD-{id}/assets/.
Prerequisites: Chrome must be running with a Zendesk tab open and "Allow JavaScript from Apple Events" enabled (one-time setup — see zendesk-attachment-downloader/SKILL.md).
When a flare .zip is found, the investigator will:
cases/ZD-{id}/assets/cases/ZD-{id}/assets/flare/status.log, config-check.log, diagnose.log, and other relevant files directly| File | Purpose |
|---|---|
SKILL.md | This file — skill definition |
investigate-prompt.md | Step-by-step investigation prompt template |