Installing features

Consume the marketplace without leaving the terminal: search the index, inspect a contract, install into the active product.


Table of contents

  1. The three commands
  2. Where the index comes from
  3. Dev versus prod
  4. Private features

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:

  1. The workspace copy at .splent_cache/marketplace/index.json.
  2. The URL in SPLENT_INDEX_URL, when set:

    SPLENT_INDEX_URL=https://splent-io.github.io/splent_index/index.json
    
  3. With no index at all, feature:info falls back to reading the feature’s pyproject.toml live from GitHub at its latest tag, and feature:search falls 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:install fetches 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:build builds the production image by pip install-ing every pinned feature from PyPI, and its pre-flight fails features that were never published there. Releasing to PyPI is part of feature: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.


Back to top

splent. Distributed by an LGPL license v3. Contact us: drorganvidez@us.es