failecho-autoreport
Automatic failure reporting for agents that are not Claude Code.
Claude Code reports tool failures through a hook that fires after every call, with no model deciding anything. Everywhere else -- LangChain, LlamaIndex, a cron job, a local model driving a scraper -- reporting depends on the model choosing to call a tool, and a small model reliably will not. This removes the decision: wrap the call site once.
from failecho_autoreport import FailEcho
fe = FailEcho()
tools = fe.wrap(tools, service="github-mcp") # a framework's tool list
@fe.watch(service="api.github.com", operation="create_issue")
def create_issue(title): # or one call site
...
fe.recovered("api.github.com", "create_issue", "refresh_schema") # what fixed it
What it sends is a failure's shape: service, operation, a short error
class, an HTTP-ish code when there is one, and duration. Never arguments,
never return values, never the prompt, never a credential. Error text is off
unless FAILECHO_SEND_ERRORS=1.
Three properties it has, each with a test rather than a promise:
- Never raises. A reporting bug cannot become your application's exception.
- Never blocks. Reports go to a worker thread; an unreachable FailEcho costs the caller about 3 ms, not a timeout.
- Never changes behaviour. Returns and re-raises exactly what your code did.
The recovered() line is the one worth bothering with. Failures alone give
the network a failure rate; only an outcome records what fixed it, which is
the half another agent can act on. It cannot be inferred, so it stays one
explicit call.
Zero dependencies. FAILECHO_DISABLED=1 turns it off. Point endpoint= at
your own server to send nothing to anyone else. The network at failecho.com
is public and, as of this release, empty -- the front page says so. Works on
your own history alone from five recoveries.
MIT. Source: https://github.com/FailEcho/failecho
Metadata
Release files for failecho-autoreport 0.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| failecho_autoreport-0.1.2.tar.gz | 13.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| failecho_autoreport-0.1.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 28.4 kB
Release files / failecho_autoreport-0.1.2.tar.gz
| Download URL | failecho_autoreport-0.1.2.tar.gz |
|---|---|
| Size | 13.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
305e6a897ac9e5785dde65f2d7703e658b99b72908b8502ddf3b47f467e8058f
|
|
BLAKE2b-256 checksum How to use checksums |
57f0561713dd9a824150ccd13dd1d063e23abfaf16cef37f76d0842be7dc5fa9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.3
|
Release files / failecho_autoreport-0.1.2-py3-none-any.whl
| Download URL | failecho_autoreport-0.1.2-py3-none-any.whl |
|---|---|
| Size | 15.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
deca1eda62a0fb6be33c7f1b8f8ddc0577169cccc96ee8166ade64e62aa97801
|
|
BLAKE2b-256 checksum How to use checksums |
6193e896b96db79162743f18f276b04f082f92aef7c3e1742c5f1ced605c31e3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.3
|