Installing features
Consume the marketplace without leaving the terminal: search the index, inspect a contract, install into the active product.
Table of contents
The three commands
| Command | What it does |
|---|---|
feature:search |
Search the index by text, category, archetype, tag, or by what a feature provides/requires. Instant and offline once an index is available. |
feature:info |
The full contract card of a feature — provides, requires, used-by, PyPI state — without cloning it. Tells you the exact install command for the active product. |
feature:install |
Clone, register, configure and start the feature in the active product, resolving hard dependencies recursively. |
A typical session:
splent feature:search --requires auth
splent feature:info signup
splent feature:install splent-io/splent_feature_signup
Where the index comes from
The CLI resolves the index local-first:
- The workspace copy at
.splent_cache/marketplace/index.json. -
The URL in
SPLENT_INDEX_URL, when set:SPLENT_INDEX_URL=https://splent-io.github.io/splent_index/index.json - With no index at all,
feature:infofalls back to reading the feature’spyproject.tomllive from GitHub at its latest tag, andfeature:searchfalls back to listing GitHub organisations.
Build the local copy yourself whenever you want — offline from the workspace, or from GitHub:
splent marketplace:index --local
splent marketplace:index
See marketplace:index for all sources and
options.
Dev versus prod
- Development installs from GitHub tags:
feature:installfetches the released tags, caches the chosen version under.splent_cache/, and registers it in the product (or clones it editable at the workspace root). PyPI is not involved. - Production installs from PyPI:
product:buildbuilds the production image bypip install-ing every pinned feature from PyPI, and its pre-flight fails features that were never published there. Releasing to PyPI is part offeature:release.
Private features
Features in private GitHub repositories work through the same flow — set
GITHUB_USER and GITHUB_TOKEN in the workspace .env so
feature:install, feature:clone and the live search can authenticate
(a token also raises the API rate limit for public repos). See
Tokens setup. A private feature will not appear in
the public index; install it by its org/repo name directly, or build a
private index over your own org with
splent marketplace:index --org my-company.