Tosone 48102fe383 feat(daemon): sync code repositories with stored credentials
The daemon read the OAuth access token straight from user_3rdparty, so a
sync that ran more than two hours after the last login failed with a 401
and the reason was never surfaced: the status row said Failed with an empty
message, and nobody could tell that a token had expired.

- load and decrypt the credential, and fail with a message that tells the
  user what to do when it is missing or cannot be opened
- reject non-token credentials for syncing, since listing repositories is an
  API call that an SSH key or username/password cannot make
- resolve the provider base URL from scm.providers and pass it to the
  GitLab and Gitea clients instead of letting them default to the hosted
  endpoints
- truncate the stored error message to the column size, so a long provider
  error does not fail the status update that is supposed to explain it

Verification:
- go build -tags "netgo,timetzdata,exclude_graphdriver_btrfs,containers_image_openpgp" ./...
2026-10-27 21:07:46 +08:00
2026-08-01 20:32:49 +08:00
2026-08-01 20:32:49 +08:00
2026-08-01 20:32:49 +08:00
2026-08-01 20:32:49 +08:00
2026-08-01 20:32:49 +08:00
2026-08-01 20:32:49 +08:00
2026-08-01 20:32:49 +08:00
2026-08-01 20:32:49 +08:00
2026-08-01 20:32:49 +08:00
2026-08-01 20:32:49 +08:00

sigma

sigma

GitHub Workflow Status Coveralls GitHub repo size

Sigma is an image registry that is extremely easy to deploy and maintain, and it adheres to the interface standards defined by the OCI Distribution Specification 1.1, it can also support any other client programs that follow the interface definition of the OCI Distribution Specification, such as oras, apptainer, helm, and nerdctl.

Quick Start

Now you can use this command to run a simple server:

docker run --name sigma -p 3000:3000 --rm tosone/sigma:nightly-alpine

The default username and password is: sigma/Admin@123. If you want to modify the default password, please refer to the configuration instructions.

Demo Server

It is deployed on an AWS EC2 instance (2C4G, 40G disk) running Debian 12.1 as the Linux distribution. The Docker version used is 25.0.3. The demo server was set up following these instructions.

Visit: https://sigma.tosone.cn, username/password: sigma/Admin@123

Architecture

The diagram below maps Sigma's main runtime layers, from client entry points to request handling, background workers, and the infrastructure services they depend on.

Sigma architecture

Features

  • Support docker registry v2 protocol.
  • Support OCI Image v1 Format and OCI Image Index v1 Format.
  • Support OCI artifacts such as helm and so on.
  • Support OCI sbom.
  • Support Image security scan.
  • Support registry proxy.
  • Support Namespace quota.
  • Support Image automatic garbage collection.
  • Support Image sign.
  • Support Image build in docker, podman and kubernetes.
  • Support Image replication.

AI Clients and Automation

Sigma provides two integration paths for AI clients and external automation:

  • sigma-cli: a single binary that operates a remote Sigma server over the REST API. It covers namespaces, repositories, tags, artifacts, members, and users. See CLI & AI Agents.
  • External REST API skill: tools/skill/sigma-api-operator packages a reusable skill and swagger.yaml so CLI agents such as Claude Code or Copilot CLI can discover Sigma APIs and operate resources through HTTP requests, including the areas the CLI does not wrap yet.

Alternatives

Languages
Go 73.9%
TypeScript 23.6%
CSS 1.6%
Dockerfile 0.3%
Makefile 0.2%
Other 0.3%