SCICTL(8) - System Manager’s Manual


scictl - command line client to scid


scictl job-add project tag
scictl job-todo worker
scictl project-add name desc url script
scictl project-info name
scictl project-list
scictl project-update name key value
scictl worker-add name desc
scictl worker-list


The scictl utility is a command line client that connects to scid(8) daemon. It is best used in conjunction with automated programs (such as cron) and SCM integration to add new jobs to execute. It is also used as administrative utility to create projects and workers.

The following options are available before the command name:

-k key

Set the API authentication to key.


Set the url for connecting to scid(8). You can specify a scheme using “http://” or “https://”. Default: “localhost”.

It is part of the sci(7) continuous integration framework.


All commands are designed to return a human readable format but is guaranteed to stay compatible across new versions. It can be used in scripts as well.


Create a new job for the given project using the user arbitrary tag identifier.


List jobs that must be performed by the given worker name. Jobs that were created earlier than the worker will not be listed to avoid evaluating a possible high number of jobs.


Create a new project with name, a user description set with desc, an arbitrary website url, and a script code to execute specified by file script. If the script argument is set to “-” the standard input is read instead.


Get the detailed information, including the script code from project.


List all projects, excluding the script code.


Update an existing project by setting its new fields.

The key argument should be one of the argument name is similar to the project-add command. For example, to update the description of a project one should specify “desc” as name argument and a new description as key.


Create a new worker with name user identifier and an arbirary desc description.


List all workers present on the system. It does not indicate if those workers are actually running.


The following environment variables affects scictl:


Points to a HTTP URL where scid is running. Must start with a HTTP scheme such as “http” or “https”.


Secret API key to perform requests.


Add a new worker named OpenBSD with identifier openbsd

$ scictl worker-add openbsd OpenBSD

Add a project hello that executes a script shell.

$ scictl project add hello "Hello World"

Add a new job for the project hello with as argument “world”

$ scictl job-add hello world

Update the project hello with new description and new code

scictl project-update example desc "Hello World v2""
scictl project-update example script


sci(7), scid(8), sciworkerd(8)

macOS 12.5 - June 30, 2021-2022