m06-error-handling skillA
m06-error-handling is agent-read markdown (skill) from moeru-ai/auv: CRITICAL: Use for error handling. Triggers: Result, Option, Error, ?, unwrap, expect, panic, anyhow, thiserror, when to panic vs return Result, custom error, error propagation, 错误处理, Result 用法, 什么时候用 panic.
Indexed from public GitHub and served as immutable, content-addressed versions. Install it pinned to an exact SHA-256 with the mdr CLI, and every file is verified against the hash recorded here before it reaches your agent. The deterministic audit below grades the latest version, and the same file always earns the same grade.
What the file says
# Error Handling > **Layer 1: Language Mechanics** ## Core Question **Is this failure expected or a bug?** Before choosing error handling strategy: - Can this fail in normal operation? - Who should handle this failure? - What context does the caller need? --- ## Error → Design Question | Pattern | Don't Just Say | Ask Instead | |---------|----------------|-------------| | unwrap panics | "Use ?" | Is None/Err actually possible here? | | Type mismatch on ? | "Use anyhow" | Are error types designed correctly? | | Lost error context | "Add .context()" | What does the caller need to know? | | Too many error variants | "Use Box<dyn Error>" | Is error granularity right? | --- ## Thinking Prompt Before handling an error: 1. **What kind of failure is this?** - Expected → Result<T, E> - Absence normal → Option<T> - Bug/invariant → panic! - Unrecoverable → panic! 2. **Who handles this?** - Caller → propagate with ? - Current function → match/if-let - User → friendly error message - Programmer → panic with message 3. **What context is needed?** - Type of error → thiserror variants - Call chain → anyhow::Context - Debug info → anyhow or tracing …
Read the whole file at its exact version.
How to install
mdr add moeru-ai/auv/m06-error-handling@git:20260725.8a8e541mdr add moeru-ai/auv/m06-error-handling@sha256:9760e9433bfaacdePin to a label to follow the author's releases, or to a sha256 to freeze the exact bytes forever. Either way the resolved hash is written to mdr.lock, and mdr install reproduces it on any machine.
[](https://markdownregistry.com/a/art_wb6i4odxs3t3tt6g)
1 badge views in 30 days
Versions
Audit of the latest version
- pass: Frontmatter block present
- pass: Frontmatter declares a name
- pass: Frontmatter declares a description
- pass: Size between 200 bytes and 200 KB (4603 bytes)
- pass: No zero-width or bidi control characters
- pass: No instruction hidden inside an HTML comment
- pass: No link to an exfiltration or paste host
- pass: No credential-shaped string
- pass: No instruction to send local credentials anywhere
- pass: No text hidden with inline styles
- pass: No prompt-injection phrasing
- pass: No curl or wget piped into a shell
- pass: No recursive delete of root, home or parent
- pass: No instruction to read or print local credentials
- pass: No base64 blob over 200 characters
- pass: No link to a raw IP address
- pass: No script tag
Source
moeru-ai/auv · 50 stars · license Apache-2.0 · pushed 2026-09-23 · branch main
API
GET https://markdownregistry.com/api/v1/artifacts/art_wb6i4odxs3t3tt6g GET https://markdownregistry.com/api/v1/resolve?ref=moeru-ai/auv/m06-error-handling GET https://markdownregistry.com/api/v1/blob/9760e9433bfaacdecf320ed128bd32e72296386d757abeeaa1d53387da073185
Your agent does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.