Thanks to visit codestin.com
Credit goes to github.com

Skip to content

The CLI for STOA — The European API & AI Tools Gateway. Declarative, GitOps-native, kubectl-style.

License

Notifications You must be signed in to change notification settings

stoa-platform/stoactl

🚀 stoactl

GitOps-native CLI for STOA Platform

Release License Go Report Card


stoactl is a command-line interface for STOA Platform — The European Agent Gateway. It provides a declarative, kubectl-like experience for managing APIs, subscriptions, and other STOA resources through infrastructure-as-code patterns.

Features

  • GitOps-native: Declarative resource management with apply and delete
  • Multi-context: Manage multiple STOA environments (dev, staging, prod)
  • OAuth2/OIDC: Secure authentication via Keycloak
  • Familiar UX: kubectl-style commands for a seamless developer experience

Installation

Homebrew (macOS/Linux)

brew install stoa-platform/tap/stoactl

Binary (Linux/macOS)

curl -sfL https://get.gostoa.dev/stoactl | sh

Docker

docker run ghcr.io/stoa-platform/stoactl:latest version

From Source

go install github.com/stoa-platform/stoactl/cmd/stoactl@latest

Quick Start

1. Configure a context

stoactl config set-context prod \
  --server=https://api.gostoa.dev \
  --tenant=acme

2. Switch to the context

stoactl config use-context prod

3. Authenticate

stoactl auth login

4. List resources

stoactl get apis
stoactl get subscriptions

5. Apply resources

# api.yaml
apiVersion: stoa.dev/v1
kind: API
metadata:
  name: payment-api
  tenant: acme
spec:
  upstream: https://api.payments.example.com
  path: /payments
  version: v1
stoactl apply -f api.yaml

Commands

Command Description
stoactl config set-context Create or update a context
stoactl config use-context Switch to a context
stoactl config get-contexts List all contexts
stoactl auth login Authenticate with STOA
stoactl auth status Show authentication status
stoactl get <resource> List resources
stoactl apply -f <file> Create or update resources
stoactl delete <resource> <name> Delete a resource
stoactl version Print version information

Configuration

stoactl stores configuration in ~/.stoactl/config.yaml:

current-context: prod
contexts:
  prod:
    server: https://api.gostoa.dev
    tenant: acme
  dev:
    server: https://api.dev.gostoa.dev
    tenant: acme-dev

Exit Codes

Code Meaning
0 Success
1 General error
2 Command misuse
3 Authentication failed
4 Resource not found
5 Conflict
6 Validation error

Related Projects

Repository Description
stoa Main platform monorepo
stoa-docs Documentation
stoa-helm Helm charts

Contributing

Contributions are welcome! Please read our Contributing Guide before submitting a Pull Request.

License

Apache License 2.0 - see LICENSE for details.


Part of the STOA Platform project

🇪🇺 Built in Europe for European sovereignty

About

The CLI for STOA — The European API & AI Tools Gateway. Declarative, GitOps-native, kubectl-style.

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors 2

  •  
  •