Skip to main content
Gå til innhold

siktctl

siktctl is a command-line utility for Sikt employees that provides access to various internal APIs. The tool provides easy access to information about the organization, product teams, Platon resources, and more.

Installation

npm install -g @sikt/siktctl

Check version

To check which version of siktctl you have installed:

siktctl -V

Update

To update to the latest version:

npm update -g @sikt/siktctl

Authentication

Before you can use siktctl, you need to log in with your Feide account:

siktctl login

This opens your browser where you log in with Feide. The token is stored locally in ~/.siktctl-token.json and is used for all subsequent commands.

Usage Examples

View employee information

siktctl org people

Lists all employees in Sikt.

View product teams

siktctl org teams

Shows all product teams in the organization.

View team members

siktctl org teams members <team-id>

Shows all members of a specific team.

View organizational units

siktctl org units

Lists all product areas and sections.

Platon commands

GitLab projects

siktctl platon gitlab --limit 20

Lists GitLab projects with their associated product teams.

Kubernetes namespaces

siktctl platon k8s namespaces --limit 20

Shows Kubernetes namespaces on the PaaS platform with information about team, product area, and associated GitLab project.

Namespace overview

siktctl platon k8s overview --limit 20

Provides a comprehensive overview of namespaces with information about deployments, statefulsets, cronjobs, and workload trends. This command uses caching to reduce load time.

Namespace details

siktctl platon k8s namespace my-app-prod

Shows detailed information about a specific namespace.

Filtering

Many commands support filtering by product area or team:

siktctl platon k8s namespaces --pa <product-area-id>
siktctl platon k8s namespaces --team <team-id>

JSON output

If you want to use the output in scripts or process data further, you can request JSON:

siktctl org teams --json

How it works

siktctl uses OAuth/OIDC authentication via Feide to access Sikt's internal APIs:

  1. Login: siktctl login starts a local web server that handles the OAuth flow with Feide
  2. Token exchange: The base token from Feide is exchanged for API-specific tokens when you run commands
  3. Token caching: Tokens are stored locally and reused until they expire
  4. API access: Each API (Sikt API, Platon API, etc.) gets its own token

The tool is written in TypeScript and uses Arquero for data manipulation and table display.

Source code

The source code for siktctl can be found on GitLab: