| name | finfocus-install |
| description | Automated FinFocus CLI and plugin setup workflow. Use when installing finfocus, setting up plugins for cloud providers, initializing configuration, bootstrapping a new finfocus environment, or onboarding a project for cost analysis. Triggers on: "install finfocus", "setup finfocus", "configure cost analysis", "install plugins", "bootstrap finfocus", "finfocus setup", "add cost tracking", "onboard project", or any task involving initial finfocus installation and environment configuration.
|
FinFocus Installation
Quick Path: Existing Install
If finfocus is already installed, prefer the built-in setup command:
finfocus setup
finfocus setup --skip-analyzer
finfocus setup --skip-plugins
finfocus setup --non-interactive
Setup runs: version check, Pulumi detection, directory creation, config init,
analyzer install, and default plugin (aws-public) install.
Full Workflow
Step 1: Check Existing Installation
finfocus --version
If installed, skip to Step 3. If not, continue.
Step 2: Install the CLI Binary
Install script (Linux/macOS):
curl -fsSL https://raw.githubusercontent.com/rshade/finfocus/main/scripts/install.sh | sh
| Env Var | Purpose |
|---|
FINFOCUS_VERSION | Pin specific version (default: latest) |
FINFOCUS_INSTALL_DIR | Custom install dir (default: /usr/local/bin or ~/.local/bin) |
FINFOCUS_NO_VERIFY=1 | Skip SHA256 checksum verification |
Go install (fallback/Windows):
go install github.com/rshade/finfocus/cmd/finfocus@latest
Source build (last resort):
git clone https://github.com/rshade/finfocus.git && cd finfocus && make build
Verify: finfocus --version
Step 3: Detect Cloud Providers
Determine which plugins to install:
- Check for
Pulumi.yaml/Pulumi.yml — scan resource type prefixes (aws:, kubernetes:)
- Check Pulumi state (
pulumi stack export) for resource types
- Check filesystem:
~/.aws/, ~/.config/gcloud/, ~/.azure/, kubeconfig
- Default to
aws-public if nothing detected
Provider-to-plugin mapping — see
references/registry-plugins.md.
Step 4: Install Plugins
finfocus plugin install aws-public
finfocus plugin install kubecost
Key flags — see references/install-commands.md
for the complete flag reference.
finfocus plugin install aws-public --metadata="region=us-east-1"
finfocus plugin install aws-public --fallback-to-latest
finfocus plugin install aws-public --force --clean
Step 5: Initialize Configuration
finfocus config init
finfocus config init --global
Config precedence: project-local > global > env vars > defaults.
Step 6: Install Pulumi Analyzer (Optional)
For inline cost estimates during pulumi preview:
finfocus analyzer install
finfocus analyzer check
Then run: pulumi preview --policy-pack ~/.finfocus/analyzer
Add to PATH for discovery: export PATH="$HOME/.finfocus/analyzer:$PATH"
Step 7: Validate
finfocus plugin validate
finfocus plugin list --verbose
finfocus plugin list --available
Directory Structure
~/.finfocus/
├── config.yaml # Global configuration
├── plugins/ # Plugin binaries
│ ├── aws-public/<version>/finfocus-plugin-aws-public
│ └── kubecost/<version>/finfocus-plugin-kubecost
├── cache/ # BoltDB cache (cache.db)
├── logs/ # Log files
└── analyzer/ # Pulumi policy pack
References