Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.devhelm.io/llms.txt

Use this file to discover all available pages before exploring further.

The prompts below assume the skills are installed (npx devhelm skills install) and you’re chatting with Cursor, Claude Code, or Claude Desktop. Each example lists the primary skill the agent will load and the concrete result you should expect. All of these are safe to run against a production workspace — writes that touch public surfaces (publishing incidents, rotating keys, deleting resources) require an explicit confirmation turn.

devhelm-configure — Create your first monitor

“Use devhelm-configure to set up an HTTP monitor for https://api.myapp.com/health — every 60 seconds, from us-east and eu-west, and alert my team’s Slack channel (#ops) when it’s down for two consecutive checks.”
What happens:
  1. Agent reads SKILL.mdreferences/monitors.mdreferences/alert-channels.mdreferences/notification-policies.md.
  2. Detects it’s an imperative / one-off setup (no devhelm.yaml in cwd).
  3. Creates a Slack alert channel (using a Slack secret you’ll be asked to paste).
  4. Creates the monitor with the right assertions.
  5. Creates a notification policy scoped to the monitor’s tag (or to the monitor directly) with trigger_count=2 and the Slack channel attached.
  6. Returns a summary with IDs and the monitor’s status.

devhelm-configure — Migrate to Monitoring as Code

“Use devhelm-configure to export all my current monitors, alert channels, and notification policies into a devhelm.yaml under ./monitoring/, and set up a GitHub Actions workflow that runs devhelm plan on PRs and devhelm deploy on main.”
What happens:
  1. Agent reads references/mac-yaml.md.
  2. Pulls the live config, writes ./monitoring/devhelm.yaml, splits into separate files per resource type if the footprint is large.
  3. Runs devhelm plan to verify the export is a no-op (no drift).
  4. Generates .github/workflows/devhelm.yml using the setup-devhelm GitHub Action.
  5. Opens a PR description summarizing what’s managed as code.

devhelm-investigate — Explain a failing monitor

“Use devhelm-investigate to tell me why the ‘Checkout API’ monitor is degraded. I want exact check result IDs, the incident timeline, and the forensic trace.”
What happens:
  1. Agent loads SKILL.mdreferences/check-results.mdreferences/incidents.md.
  2. Runs devhelm monitors get checkout-api to confirm state.
  3. Runs devhelm check-results list --monitor checkout-api --limit 20, filters failures.
  4. Finds the open incident and runs devhelm incidents forensic-trace <id>.
  5. Returns a structured response:
    • Summary: “Degraded since 14:02 UTC; failing in us-east only (eu-west passing).”
    • Root cause from checks: 3 of the last 5 us-east checks returned HTTP 503, assertion status_code == 200 failed.
    • Forensic trace: TRIGGER at 14:02 (triggered_by_rule=consecutive_failures, index 0, snapshot hash ff82…), CONFIRM at 14:05.
    • Suggested next steps: look at upstream dependency status pages attached to this monitor, or run devhelm monitors test checkout-api against a staging URL.
Nothing is mutated.

devhelm-investigate — Audit who changed what

“Use devhelm-investigate: who edited the ‘Production DB’ notification policy in the last 7 days, and what did they change?”
What happens:
  1. Agent reads references/audit-log.md.
  2. Runs devhelm audit-log list --resource-type=notification_policy --action=notification_policy.updated --from=7d.
  3. Filters to the policy ID, formats the resulting events (who, when, surface, diff summary).
  4. Returns a clean timeline. Never prints API key values or secret contents even if they appear in metadata.

devhelm-communicate — Stand up a status page

“Use devhelm-communicate to create a public status page at status.myapp.com showing my ‘API’, ‘Dashboard’, and ‘Auth’ monitors, grouped under a ‘Core Services’ section.”
What happens:
  1. Agent reads SKILL.mdreferences/status-pages.mdreferences/components.mdreferences/custom-domains.md.
  2. Creates the page with a sensible slug.
  3. Creates a Core Services component group.
  4. Creates three components backed by the three monitors.
  5. Configures the custom domain and prints the CNAME/TXT records you need to add to your DNS.
  6. Does not publish until you say “go”.

devhelm-communicate — Publish an incident update

“Publish an update to the ‘Checkout degradation’ incident saying we’ve identified a cache stampede and are rolling back the deploy. Status is ‘identified’, notify subscribers.”
What happens:
  1. Agent reads references/incidents.md.
  2. Re-confirms the incident ID and current public status.
  3. Presents the full update body to you verbatim and asks: “Confirm publish with notify-subscribers = true?”
  4. Only after you reply with a yes does it run devhelm status-page-incidents update. If the incident is internal (auto-created from a monitor) and not yet attached to a status page, the skill prompts you to choose the right page first.

devhelm-manage — Inspect entitlements

“Use devhelm-manage to tell me how close I am to my monitor limit on this plan, and whether I’d have room to add 20 more HTTP monitors.”
What happens:
  1. Agent reads references/entitlements.md.
  2. Runs devhelm auth me and parses the entitlements block.
  3. Counts current monitors via devhelm monitors list --output json | jq length.
  4. Returns: current plan, monitor limit, current count, headroom, and the named upgrade path if headroom is insufficient.

devhelm-manage — Rotate an API key

“Rotate my ‘Default’ API key.”
What happens:
  1. Agent reads references/api-keys.md.
  2. Runs devhelm api-keys list and locates the key named Default (or whatever you specified).
  3. Confirms: “This will invalidate the current value. Any workflows, CI pipelines, or agent installs using it will need the new value. Continue?”
  4. On yes: runs devhelm api-keys regenerate <id>, prints the new value, and reminds you to update DEVHELM_API_TOKEN in the environments that use it.

Anti-patterns

These prompts will not work cleanly — by design. The skills will either refuse or require much more context:
  • “Delete all my monitors.” → The skill asks for an explicit, typed confirmation and lists every monitor it’s about to delete.
  • “Here’s a user’s email — subscribe them to my status page.” → The skill requires you to confirm you have consent; status-page subscribers must opt in.
  • “Paste my API key into the PR description.” → The skill never prints the full key value into any output that could be committed or shared. Use {{ secrets.DEVHELM_API_TOKEN }} references instead.
See the overview for the full safety-rail list.