Skip to content

alis packages

Install, upgrade and add a service's language packages (Go, Node, Python, Dart, .NET, Swift, Rust), share a defined package with other products, and run Swift tooling with refreshed registry credentials.

Synopsis

Shell
alis packages add [<package-id>] [flags]
alis packages install [<package-id>] [flags]
alis packages share [<package-id>] --with <org.product> [flags]
alis packages sharing [<package-id>] [flags]
alis packages swift [<package-id>] -- <tool arguments> [flags]
alis packages unshare [<package-id>] --with <org.product> [flags]
alis packages upgrade [<package-id>] [flags]
alis packages xcode-check [<package-id>] [flags]
alis packages xcodebuild [<package-id>] -- <tool arguments> [flags]

Aliases: packages, package, pkg.

Description

The package ID selects the service whose manifests are changed; it is never a dependency to add. It may be omitted inside the service's directory. Registry credentials are refreshed automatically before package managers run (written to ~/.npmrc, ~/.netrc and the dart pub tokens). A project-level .npmrc that carries its own _authToken for an Alis registry host overrides ~/.npmrc; it is refreshed for the run and put back afterwards. Remove such lines from project .npmrc files and keep them out of git.

Use these commands for private Alis packages instead of running go get, go mod tidy, pnpm, pip, uv or dart directly. Python installs use uv when it is on the PATH.

A service's defined package reaches another product's registries only once it is shared.

Subcommands

alis packages add

Add the selected service's own generated definition package to its manifests.

alis packages add [<package-id>] [flags]
Flag Type Default Meaning
--language <lang> string Only run for one language: go, node, python, dart, dotnet, swift or rust.
--python-tool <tool> string uv when installed, else pip Installer for Python manifests: pip or uv.

alis packages install

Refresh private registry credentials and run the package managers with the service's registry configuration: go mod tidy, pnpm install, pip/uv install, dart pub get. Then pull the latest version of the service's own generated definition package (a targeted fetch, not a full dependency upgrade). Use this first when local builds cannot download private Alis packages; a fresh clone always needs it once. Installation can update manifests and lockfiles.

alis packages install [<package-id>] [flags]
Flag Type Default Meaning
--language <lang> string Only run for one language: go, node, python, dart, dotnet, swift or rust.
--python-tool <tool> string uv when installed, else pip Installer for Python manifests.
--version <version> string latest Install this exact definition version (Go, Node, Python, .NET, Swift and Rust).

alis packages share

Share the selected service's defined package with one or more destination products. Each destination receives the current latest version straight away and every version defined after that. Only admins of the source product can share. Sharing is per service.

alis packages share [<package-id>] --with <org.product> [flags]
Flag Type Default Meaning
--with <org.product> strings Destination product (repeatable).

alis packages sharing

List the products that receive the selected service's defined package.

alis packages sharing [<package-id>] [flags]

Aliases: sharing, shares. No flags beyond the global flags.

alis packages swift

Refresh the service's Swift registry credentials and run swift in the current directory. Pass tool arguments after --. SwiftPM commands use temporary configuration and credential stores; temporary token files are removed on completion. With --json, tool output goes to stderr and stdout contains only the final result.

alis packages swift [<package-id>] -- <tool arguments> [flags]

No flags beyond the global flags.

alis packages unshare

Stop sharing the selected service's defined package with the given destination products. Versions already copied stay there; no further versions are delivered.

alis packages unshare [<package-id>] --with <org.product> [flags]
Flag Type Default Meaning
--with <org.product> strings Destination product (repeatable).

alis packages upgrade

Upgrade the existing alis.build dependencies in the selected service's manifests. --only limits the upgrade to specific dependencies and --to pins one at an exact version; --path limits the update to a nested module or manifest. Failed locations are rolled back to their pre-run manifests.

alis packages upgrade [<package-id>] [flags]
Flag Type Default Meaning
--all bool false Upgrade all packages, not just the alis.build ones.
--language <lang> string Only run for one language.
--only <dep> strings Only upgrade these dependencies: dotted package IDs or exact module/package names (repeatable).
--path <folder-or-manifest> strings Only run for this package folder or manifest, relative to the service (repeatable).
--python-tool <tool> string uv when installed, else pip Installer for Python manifests.
--to <version> string Pin this exact version: of the service's own defined package, or of the one --only dependency.

alis packages xcode-check

Check saved Xcode package state without changing it. --resolve runs native Xcode package resolution through Alis authentication, then checks again; it requires an explicit project or workspace and scheme and never overwrites lockfiles or closes Xcode. A non-zero exit means refresh is required or readiness could not be verified.

alis packages xcode-check [<package-id>] [flags]
Flag Type Default Meaning
--cloned-source-packages-path <path> string Custom SourcePackages directory used by Xcode.
--derived-data-path <path> string DerivedData used by the failing build or open Xcode workspace.
--project <path> string Xcode project path.
--resolve bool false Resolve the selected workspace with native Xcode, then verify.
--scheme <name> string Scheme to resolve.
--workspace <path> string Xcode workspace path.

alis packages xcodebuild

Refresh the service's Swift registry credentials and run xcodebuild in the current directory. Pass tool arguments after --. Requires macOS: registry mappings are merged into the user's SwiftPM configuration and credentials are refreshed in the macOS Keychain.

alis packages xcodebuild [<package-id>] -- <tool arguments> [flags]

No flags beyond the global flags.

Examples

Shell
alis packages install acme.shop.orders.v1 --json
alis packages install --language go --json
alis packages upgrade acme.shop.orders.v1 --json
alis packages upgrade --only acme.shop.users.v1 --to 1.8.0 --language go --json
alis packages upgrade acme.shop.orders.v1 --path web --language node --json
alis packages share acme.shop.users.v1 --with acme.billing --json
alis packages sharing acme.shop.users.v1 --json
alis packages swift acme.shop.app.v1 -- build --package-path app
alis packages xcode-check acme.shop.app.v1 --project app/App.xcodeproj --scheme App --json

JSON output

upgrade --json lists upgraded, unchanged and skipped per dependency. xcode-check --json includes per-package expected and actual versions, paths and recovery argv.

Notes

  • "no published definition yet" on install means the service has never been defined: run alis define <pkg> first.
  • install and upgrade are mutating-class commands under the automation tiers.