Collections and lists
Build, refine, and analyse saved lists — and read the enrichment state already recorded on them instead of re-deriving it.
A collection is the working list every other step reads from and writes back to.
Create and inspect
eximagent collection create --name "de-coffee-buyers"
eximagent collection list
eximagent collection get --name "de-coffee-buyers"
Collections are referenced by bare name or by UUID — the server resolves both, and no sigil is needed.
Add and remove members
eximagent collection items add --name "de-coffee-buyers" --inputs companies.ndjson
eximagent collection items remove --name "de-coffee-buyers" --id <companyId>
Read the enrichment state
collection get returns an enrichmentStatus block:
{
"enrichmentStatus": {
"company": "complete",
"contacts": "partial",
"drafts": "not-started"
}
}
Read it before deciding what to run. It is the answer to "where did I get to" — re-deriving it costs money, and asking the user costs trust.
Rank with reasoning
eximagent collection analyze --collectionId <id> \
--question "which of these import at scale and would buy from a mid-size roaster?"
You get a ranking with auditable evidence per rank, rather than an opaque order.
Fill from the corpus
eximagent collection enrich-from-corpus --collectionId <id>
This attaches what the trade corpus already knows to every member — free, and worth doing before any billable enrichment.
Corridors
A corridor is a saved trade lane you reuse across runs:
eximagent corridor save --name "vn-de-coffee" --origin VN --dest DE --hs6 090111
eximagent corridor list
eximagent corridor get --name "vn-de-coffee"