From f2a440e288e93c9f9d8f2704bc7a0fb99039a3b6 Mon Sep 17 00:00:00 2001 From: burnshall-ui Date: Sat, 15 Aug 2026 02:13:19 +0200 Subject: [PATCH] Add OpenClaw EVE ESI Skill to community services Resubmission of #273, which was closed in February on two grounds: the project was 18 hours old against a three-month requirement, and it spoke Swagger over versioned URLs. The repository has now been public since 2026-02-08, and the skill has been migrated to OpenAPI and compatibility dates. Co-Authored-By: Claude Opus 5 --- .../community/openclaw-eve-esi-skill/index.md | 72 +++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 docs/community/openclaw-eve-esi-skill/index.md diff --git a/docs/community/openclaw-eve-esi-skill/index.md b/docs/community/openclaw-eve-esi-skill/index.md new file mode 100644 index 0000000..0b0f3f0 --- /dev/null +++ b/docs/community/openclaw-eve-esi-skill/index.md @@ -0,0 +1,72 @@ +--- +search: + exclude: true + +title: OpenClaw EVE ESI Skill +type: service +description: An OpenClaw agent skill that answers questions about your characters in natural language, with read-only ESI access by default and tokens kept on your own machine. +maintainer: + name: burnshall-ui + github: burnshall-ui +--- + +# OpenClaw EVE ESI Skill + +A skill for [OpenClaw](https://openclaw.ai) that lets a self-hosted agent answer +questions about your EVE characters in plain language — "how much ISK do I +have", "what is my skill queue", "which extractors run out tonight". It talks to +the official EVE SSO and ESI APIs only; there is no intermediate service, and +your tokens never leave the machine you run it on. + +
+ +- [:octicons-mark-github-16: __GitHub__](https://github.com/burnshall-ui/openclaw-eve-skill){ .esi-card-link } +- [:octicons-browser-16: __ClawHub__](https://clawhub.ai/burnshall-ui/skills/eve-esi){ .esi-card-link } + +
+ +## Features + +- Natural-language queries against character, corporation and universe data — + wallet, assets, skills, clones, location, industry, contracts and market. +- Planetary Interaction reporting: extractor timers, storage fill levels and + attention flags across every colony on a character. +- Market price lookups, including the live Jita order book for a given type. +- Threat assessment and route planning from ESI kill, jump, faction-warfare and + incursion data. +- A validated JSON Schema vocabulary for describing alerts, reports and price + thresholds, so an agent's own automation has a well-defined config to act on. + The skill validates such a config and checks it against the granted scopes; it + does not itself poll, schedule or deliver notifications. +- Read-only by default: any state-changing request is refused unless the + operator explicitly passes `--allow-write`. + +## ESI usage + +- Requests go to `https://esi.evetech.net` with no version prefix and carry an + `X-Compatibility-Date` header pinned to a reviewed date, rather than relying + on the oldest supported behaviour. +- Every ESI and SSO request sends a `User-Agent` naming the skill, its version + and this repository; operators can add a contact address via an environment + variable. +- `429` responses are retried after `Retry-After` and `420` after the + error-limit reset, with a bounded retry budget. Cache expiry is surfaced to + the caller rather than worked around. + +## Authentication and scopes + +Login uses EVE SSO with OAuth2 and PKCE, so there is no client secret to leak. +Tokens are written to a `chmod 600` file on the operator's own machine and +refreshed in-process; the skill is built so that a token never has to appear on +a command line or in a log. + +Scopes are requested by profile rather than all at once — the default profile +asks for eight read scopes, and wallet and mail are only included if the +operator explicitly chooses the widest profile. The flow prints the exact scope +list before opening the browser. + +## Self-hosting + +MIT licensed, Python standard library only, no pip dependencies. Requires an +OpenClaw installation and an EVE Developer application for the Client ID. See +the GitHub README for setup and configuration.