Hermes Support Desk

A support engineer's console for Hermes Agent and the Nous Portal: live queue health from GitHub, one-click triage of any issue (template gaps, expired debug links, secrets, model ids, duplicates) with a first response and an escalation packet, and an error doctor built from how the Portal API actually answers.

Job-application prototype by Edward Tay for the Support Engineer role. Independent; not affiliated with or endorsed by Nous Research. Reads public data only: the GitHub API and the Portal's public model list, live. Nothing is posted anywhere.

The Hermes Agent issue queue, read live. Labelling is already automated by the team's own sweeper bots; what these numbers track is whether a person has answered.

Reading

Labels on the 100 newest open issues

Deep sample: who answers, and how fast

Issues opened vs closed per week

opened closed · number = net change

Time to first team reply

By component (6+ issues in the sample)

LabelIssuesTeam replyMedian closeStill open

Live counters above refresh on every visit; this sample needs about 400 authenticated API calls and is regenerated by a script, dated above.

Must-touch: open P0 / P1 with no comment, oldest first

IssueTitle and labelsAge

Enter any issue number from NousResearch/hermes-agent (or paste an issue). The checks run in seconds; the output is a first response to post and a packet for engineering.

or

First response

Escalation packet for engineering

Portal API tickets usually arrive as a status code and one line of JSON. This tab checks model ids against the live list and maps each error the API returns to its real cause.

Reading the live model list…

Check a model id

Checks the live list, then asks the API about the id without a key (it answers model errors before auth).

Diagnose an error

How the API answers (observed 30 Sep 2026)

RequestAnswerSupport read
Listed model, no Authorization header400 "Unknown model"A missing key is reported as a bad model name. Expect tickets saying "the model in your list does not work".
Listed model, bad key401 "invalid, blocked or out of funds"Three causes in one message; ask which before debugging.
nousresearch/hermes-4-405b, any auth404 "retired"Model errors come before auth. Hermes models are absent from the public list.
hermes-4-405b (no org)404 "not found ... OpenRouter catalog"The error names OpenRouter, and list entries use OpenRouter's schema.
Malformed JSON body422Payload problem; auth not reached.

What I would measure from week one, and how the numbers above map to it.

MetricDefinitionFirst goal
Human first responseShare of new issues with a maintainer or support comment within 24 h (bots excluded).P0/P1: 100% within 4 business hours. All issues: 80% within 48 h.
Evidence completenessShare of bug reports with version, OS, repro steps and a debug report that is still readable.Capture debug output into the issue before the 6-hour paste expiry.
needs-repro ageMedian age of open needs-repro issues.Under 14 days; auto-close with a reopen path after 30.
Duplicate rateShare of new issues closed as duplicate.Tracked weekly; top duplicate clusters get a pinned issue or a doc fix.
Reopen rateShare of closed issues reopened within 14 days.Below 5%.
Portal ticket mixAuth, billing, model availability, rate limits, upstream incidents.Weekly trend note to engineering with counts and one proposed fix each.

Escalation rubric

  • P0: secret exposure, data loss, security, or a core flow down for most users. Page engineering now.
  • P1: core flow broken for one platform or provider with no workaround. Same-day engineering owner.
  • P2: broken with a workaround. Document the workaround; schedule the fix.
  • P3 and P4: minor or cosmetic. Batch weekly.

An escalation is actionable when it has: exact version, environment, minimal repro, the failing output, evidence that survives (not an expired paste), impact count, and what support already tried.