Package Exports
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (sharesight-cli) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
sharesight-cli
Unofficial CLI client for Sharesight, designed with AI agent workflows in mind.
Commands
sharesight auth loginsharesight auth statussharesight auth logoutsharesight list portfoliossharesight list groupingssharesight defaults set [--portfolio <id-or-name>] [--grouping <grouping-or-custom-name-or-id>] [--include-sales|--exclude-sales] [--format <json|jsonl>]sharesight defaults showsharesight get performance [--portfolio <id-or-name>] [--start-date YYYY-MM-DD] [--end-date YYYY-MM-DD] [--include-sales|--exclude-sales] [--grouping <grouping-or-custom-name-or-id>] [--format <json|jsonl>]
Installation
npm install
npm run buildRun during development:
npm run dev -- --helpAuthentication
Each user uses their own Sharesight OAuth client_id and client_secret.
Paying Sharesight subscribers can contact Sharesight support and ask them to provision an API account for personal use.
You can provide credentials in two ways:
- Recommended for interactive use:
sharesight auth login- Credentials are stored in OS secure storage when available (
secret-toolon Linux,securityon macOS). - If secure storage is unavailable, the CLI falls back to a local credentials file with restricted permissions and prints a warning.
- Recommended for automation/CI:
- Set
SHARESIGHT_CLIENT_IDandSHARESIGHT_CLIENT_SECRET.
Use sharesight auth status to see which credential backend is currently active.
Defaults
Set defaults once, then run report commands without repeating flags.
- Show current defaults:
sharesight defaults show
- Set default portfolio and grouping together:
sharesight defaults set --portfolio "Main Portfolio" --grouping market
- Set only one default:
sharesight defaults set --portfolio 123sharesight defaults set --grouping "Long Term"sharesight defaults set --include-salessharesight defaults set --exclude-salessharesight defaults set --format jsonl
Lists
- Portfolios:
sharesight list portfolios
- Groupings (built-in + custom):
sharesight list groupings
Get performance
sharesight get performance --format json
sharesight get performance --portfolio 123 --format json
sharesight get performance --start-date 2024-01-01 --end-date 2024-12-31 --include-sales
sharesight get performance --exclude-sales
sharesight get performance --grouping market
sharesight get performance --grouping 123
sharesight get performance --grouping "Long Term"- If
--portfoliois omitted,get performanceuses the default portfolio fromdefaults set. - If
--groupingis omitted,get performanceuses the default grouping fromdefaults setor otherwise falls back to the Sharesight default. - If
--include-sales/--exclude-salesis omitted,get performanceuses the sales default fromdefaults setor otherwise falls back to the Sharesight default. - If
--formatis omitted,get performanceuses the output format default fromdefaults set(orjsonif unset). --groupingaccepts:- standard grouping names (
market,currency, etc.) - custom grouping ID (e.g.
123) - custom grouping exact name (e.g.
"Long Term")
- standard grouping names (
Global options:
--base-url(defaulthttps://api.sharesight.com)--timeout-ms(default30000)
Output formats
json(default): pretty JSON output (recommended for AI agents)jsonl: one JSON record per line (best for pipelines)
Development checks
npm run lint
npm run test
npm run build