@prospera/eprospera-cli · v0.1.0 · early scaffold
The CLI for e-Prospera.
eprospera is a TypeScript CLI for the e-Prospera public API. Agent-key-first auth, JSON-by-default output, and an OpenCLI manifest make it usable from a terminal, a CI job, or an LLM-driven agent — with the same scoped credential and the same audit trail.
MIT · Node 20+ · macOS · Linux · Windows
Install
API docs ↗The package isn't on npm yet — install from source while the surface stabilises. The npm path lights up at v0.2.
# From source — current path
$ git clone https://github.com/Honduras-Prospera-inc/eprospera-cli
$ cd eprospera-cli && pnpm install && pnpm run build
$ ./bin/eprospera --help
# Once published (v0.2+)
$ npm install -g @prospera/eprospera-cli
Auth resolves in this order: --api-key · EPROSPERA_API_KEY · stored credentials from eprospera auth login.
Agent-key first
Scope, dry-run, audit.
Each Agent Key carries the scopes it is allowed to use. The CLI checks those scopes locally and refuses to send a request the key can't fulfil — so a misconfigured agent fails at the boundary instead of at the API.
- Bearer credentials via
--api-key, env, or stored login -
--dry-runprints the request without sending it - Every call resolves on the API with the same audit trail a human would leave
$ export EPROSPERA_API_KEY=ak_live_…
$ eprospera --json entity verify 80000000000012
✓ scope ok agent:verify_rpn
✓ POST /api/v1/verify_rpn
{"rpn":"80000000000012","active":true} Surface
Built like a contract.
A CLI that's pleasant to script against — and equally pleasant for an agent to call.
-
Scoped Agent Keys
Issue a key with only the scopes you want. The CLI checks scope locally before sending a request — a revoked or under-scoped key fails fast at the boundary.
-
JSON in, JSON out
Run any command with
--jsonand the output is a contract, not help text.--fieldstrims to the keys you care about.--dry-runprints the request the CLI would send. -
OpenCLI manifest
cli.ocs.yamlis the source of truth. Every command, flag, exit code, and required scope is enumerated — readable by humans, tools, and agents alike.
Where it runs
Anywhere
you can spawn
a process.
The integration shape is small: invoke a binary, pass an API key, read JSON. If your agent runtime can do those three things, this works.
-
Claude Code
Terminal-native agentClaude Code can run shell commands in its sandbox. Drop the binary in, hand the session an Agent Key, and the CLI is reachable like any other tool.
-
GitHub Actions
CI / CDSet EPROSPERA_API_KEY as a repository secret. Verify entities, list applications, or run --dry-run validation on every PR.
-
Custom agents
Any runtime that can spawn a processFunction-calling agents, scheduled jobs, internal scripts — anything that can invoke a binary and parse JSON. The OpenCLI manifest documents every flag and exit code.
Commands
Seven groups.
The current v0.1.0 surface, verified against cli.ocs.yaml in the repo. Subcommands are still landing — check the manifest for the latest.
-
eprospera auth
login · whoami · logoutManage stored credentials.
eprospera auth login -
eprospera me
profile · residency · id-verificationInspect the identity behind the current credential.
eprospera --json me profile -
eprospera entity
verify · search · get · documentsVerify, search, fetch legal entities and their documents.
eprospera --json entity verify 80000000000012 -
eprospera application
list · create · get · pay · watchCreate, list, pay, watch legal-entity applications.
eprospera --json --yes application create --file application.json -
eprospera config
get · set · list · unsetRead and write local CLI configuration.
eprospera config list -
eprospera completion
bash · zsh · fish · powershellGenerate shell completion scripts.
eprospera completion zsh > _eprospera -
eprospera schema
—Print the public API schema the CLI was built against.
eprospera schema
Use cases
What people are
actually using it for.
-
Verify an RPN before issuing access in your own system.
-
Search the legal-entity registry from a customer-support workflow.
-
Submit a legal-entity application from a JSON file and poll until it resolves.
-
Run
--dry-runin CI to validate request bodies before they touch production.
Open source
MIT-licensed. Built in the open. Issues and PRs welcome.
Try it from source.
Two commands and you're running against the real API.