AethelLayer
A probe in your CLI, SDK, and API that keeps the stack and opens the thread.
Paste it in a terminal. It wraps a command that exits 1 and prints a drafted GitHub issue. No account.
developer@acme payments-api %
$ npx @acme/cli auth login --env staging
→ pulling compose overlay · auth-worker
→ exchanging OAuth code at /oauth/callback
ERR_DOCKER_OOM container auth-worker killed (exit 137)
Caught ERR_DOCKER_OOM on POST /oauth/callback. auth-worker is 512Mi. Node asked for a 4GB heap.
What were you trying to do? I will attach it to the GitHub issue.
CLI login inside Compose for a staging cut
0%
of developers never file a ticket. They just leave.
0
minutes is usually enough to put the probe in a real CLI
0
places it lives: CLI, SDK, and API middleware
Why this keeps happening
Nine out of ten developers never file anything. They type the command, it dies, and they move on. Your charts still look fine.
quiet churn · 10 evaluators
filed a ticket
1
left in silence
9
How it works
The work shows up while the error is still on their screen.
01
SDK dies
OOM, JWT, gRPC
02
Probe keeps it
stack + OS + cmd
03
One question
in the terminal
04
Draft ticket
you hit send
01
One line in the CLI, the Node SDK, or API middleware. About ten minutes. Read-only to your product.
$ npm i @aethellayer/sdk
probe.wrap(cli)02
Docker OOM. A JWT expires. gRPC dies. The probe already has the stack. Then it asks one short question.
03
An inbox that feels like Intercom, for developers. A GitHub draft sits next to it. Nothing publishes until you say yes.
Product
CLI, SDK, and API. One probe. One inbox. A ticket you still approve.
$ npx @acme/cli login ERR_DOCKER_OOM probe: what were you doing?
probe.wrap(client) JWT expired at +46s callback never returned
POST /oauth/callback gRPC deadline exceeded draft #482 waiting
Threads look like Intercom. The people in them are developers who just hit your error, not a chatbot landing page.
ERR_DOCKER_OOM
auth-worker
JWT_EXPIRED
auth-worker
gRPC deadline
auth-worker
live · 212ms
Caught OOM on /oauth/callback
CLI login inside Compose for a staging cut
GitHub and Linear drafts in the language your eng team already uses. PostHog on the side if you wired it. Nothing ships until you say yes.
Live demo
Run the failing login. See the probe catch ERR_DOCKER_OOM. Type what you were actually doing. A GitHub issue draft appears. That is the whole product, in one go.
developer@acme payments-api %
Replay the moment a developer hits Docker or OAuth friction. The probe fires inside the terminal, keeps the root cause, and drafts the ticket for someone on your team to approve.
After the first week
“We thought onboarding was fine because nobody complained. The first week of probes showed three Docker OOMs on the exact page we call the happy path. That is not feedback. That is the product talking.”
“I asked a developer what they were trying to do. They typed one sentence. We had a Linear ticket with the stack, the Node version, and the compose file before they closed the tab.”
“PostHog said they dropped at /oauth/callback. AethelLayer told us why: the JWT expired 46 seconds before the popup returned. We stopped guessing.”
Straight answers
No. You wrap the CLI, hang middleware on the API, or register one file in Next.js. The probe watches failures. It does not sit in your hot path as a new product surface, and it does not ask you to change how developers already use your tool.
Early access
Paste npx --yes @aethellayer/sdk run -- false and read the drafted issue in your terminal. Book a call when you want the probe in your CLI.