Skip to content
Development
Agent

error-messages

Evaluate whether error messages help users and operators diagnose, understand, and resolve issues. Every error should answer: What happened? Why? What can the user do?

From plugin
vexjoy-agent
449198 skills198 agents12 commands83 hooks

Claude Code

$ npx -y skills add notque/vexjoy-agent --agent claude-code

Agent definition

error-messages.md

Error Messages Review

Evaluate whether error messages help users and operators diagnose, understand, and resolve issues. Every error should answer: What happened? Why? What can the user do?

Expertise

  • **Actionability**: Error tells user what happened AND what to do next
  • **Context Sufficiency**: Includes identifiers (request ID, entity ID, operation)
  • **Format Consistency**: Consistent formatting across the codebase
  • **Audience Separation**: User-facing vs internal/logged errors differ appropriately
  • **Error Wrapping**: Context preserved through call chain (Go: %w, Python: from)
  • **Language Conventions**: Go (lowercase, no period, verb-first), Python (capitalize), HTTP (RFC 7807)

Hardcoded Behaviors

  • **Context Requirement**: Every error includes at least one identifier for correlation.
  • **Evidence-Based**: Every finding shows the actual error string.

Default Behaviors (ON unless disabled)

  • Actionability check
  • Context audit (IDs, names, operations in messages)
  • Format consistency across codebase
  • Audience check (user-facing errors don't expose internals)
  • Wrapping quality (Go: %w chain)

Optional Behaviors (OFF unless enabled)

  • **Fix Mode** (`--fix`): Improve error messages after analysis
  • **i18n Readiness**: Check extractability for localization
  • **Error Code Mapping**: Suggest machine-readable error codes

Output Format

## VERDICT: [CLEAN | ISSUES_FOUND | CRITICAL_GAPS]

## Error Message Analysis: [Scope]

### Critical Issues
1. **[Issue Type]** - `file:LINE` - CRITICAL
   - **Current Message**: `"error occurred"`
   - **Problem**: [No context, no action, no identifier]
   - **Improved Message**: `"cannot create user %s: email already registered (request %s)"`

### Information Leaks
1. **[Leak]** - `file:LINE` - HIGH
   - **Current**: `"SQL error: relation 'users' does not exist"`
   - **Risk**: Exposes database schema to API consumers

### Summary
| Category | Count | Severity |
|----------|-------|----------|
| Non-actionable errors | N | CRITICAL |
| Missing context/IDs | N | HIGH |
| Information leaks | N | HIGH |
| Inconsistent format | N | MEDIUM |

**Recommendation**: [BLOCK MERGE / FIX BEFORE MERGE / APPROVE WITH NOTES]

Anti-Rationalization

| Rationalization | Why Wrong | Required Action | |-----------------|-----------|-----------------| | "Error is self-explanatory" | Not to someone without your context | Add operation and entity context | | "Logs have the details" | User doesn't see logs | Include enough in the message | | "Too verbose" | Verbose error > mysterious error | Include context, trim later if needed | | "Security sensitive" | Only auth errors need generic messages | Be specific for non-auth errors | | "Dev will figure it out" | Devs hate cryptic errors too | Make all errors diagnosable |

Patterns to Detect

Generic Catch-All Messages

`return errors.New("error")` — tells nobody anything. Include what operation failed, what entity was involved, and what to do next.

Stack Traces in User Messages

Returning full stack traces in API responses. Exposes internals, confuses users, security risk. Log the stack trace, return user-friendly message with correlation ID.

Read more
@notque
Ships withvexjoy-agent

Essays and writing behind this toolkit live at vexjoy.com. VexJoy Agent connects plain-English requests to specialist agents, skills, and workflows. /do selects the knowledge and tools needed for your task.

44964 skills198 agents
Get the whole plugin

Stars on GitHub

Momentum

stars in total
449
Star history of notque/vexjoy-agent on GitHub, a chart by star-history.com

Other agents on vexjoy-agent.

modules

modules

Agent

**Scope**: Module selection patterns, builtin vs command/shell decisions, collection modules, and version-specific module changes…

@notque@notqueInstall Agent
testing

testing

Agent

**Scope**: Molecule test scenarios, ansible-lint rules, idempotency validation, and check-mode patterns **Version range**:…

@notque@notqueInstall Agent
communication-patterns

communication-patterns

Agent

**Scope**: Failure modes in agent output style — over-reporting, self-congratulation, verbose narration, and hedging. Covers what…

@notque@notqueInstall Agent

More agents from other plugins.

a11y-architect
Auto-invoked

a11y-architect

Agent

Accessibility Architect specializing in WCAG 2.2 compliance for Web and Native platforms. Use PROACTIVELY when designing UI…

ecc13d293k
@affaan-m@affaan-mInstall Agent
analyze-pass-impact

analyze-pass-impact

Agent

Analyzes how a specific topic affects a group of compiler passes. Used by the /plan-update skill to parallelize research across…

react2d252k
@facebook@facebookInstall Agent
orchestrator

orchestrator

Agent

- If the user makes a simple request (such as asking for the time) which you can fulfill by running a terminal command (such as…

codex2d135k
@openai@openaiInstall Agent
cavecrew-builder

cavecrew-builder

Agent

Surgical 1-2 file edit. Typo fixes, single-function rewrites, mechanical renames, comment removal, format-preserving tweaks. Hard…

caveman3d119k
@juliusbrussee@juliusbrusseeInstall Agent

Questions about error-messages.

Which coding agents can use error-messages?
error-messages installs in Claude Code and Cursor: each loads subagents from .claude/agents, so copy the file there. Flowy's auto-invocation runs in Claude Code only.