Share a project from its new Members tab. Invite people by email and pick a role: Admin, Member or Viewer. They accept from the link in the email, creating a CID account first if they need one.
Owners can do everything, including deleting and transferring the project. Admins edit the project and manage members. Members run and cancel workflows and see everything except secret values. Viewers can only read workflows, runs and logs.
Projects shared with you appear under Shared with you on the Projects page, with the owner's name, and with a people icon in the sidebar.
Actions your role doesn't allow are greyed out, with a tooltip explaining why.
Owners can hand a project to another member; everyone else can leave from Settings.
Where runs happen
Runs always happen on the computer that starts them. Workflows that run on this computer say Runs on your computer next to Run.
When several members have CID open, each push and each scheduled run happens once: the first computer to pick it up runs it, the others skip it.
Runs show who started them and where ("Started by Sara on SARA-LAPTOP") in the Runs tab and the run panel.
When you open a project shared with you, CID asks where your copy of the repository is. Folders, shells, working folders, artifacts and remote paths stay per computer.
Updates
When a new version is out, CID shows what's new in a window, once per version. The sidebar card stays until you update.
Windows: update in place. Click Update now, keep working while it downloads, then Restart and update. Updates also install the next time you close CID. This works from 1.3.0 on, so install this version yourself.
On macOS and Linux, Download installer gives you the right file for your computer.
Fixes
A project with several push workflows now starts all of them on a new commit; before, only one ran.
Changes made on another computer, and newly shared projects, show up within five minutes without restarting CID.
On Linux, workflows that run on this computer now find tools set up in your shell, like Node from nvm, even when CID is opened from the app menu.
CID 1.2.0 showed an error screen instead of the update card once a newer version was available. If that's how you got here: download this version from the releases page and install it over 1.2.0. Your projects and settings are kept.
Everyone on a shared project should update to 1.3.0 so pushes and schedules don't run twice.
CID is available for macOS: cid-1.2.0-arm64.dmg for Apple Silicon (M1 and newer) and cid-1.2.0-x64.dmg for Intel Macs. Drag CID into Applications. It isn't notarized by Apple yet, so the first time you open it, go to System Settings → Privacy & Security and click Open Anyway.
CID is available for Linux as a .deb package for Debian, Ubuntu and derivatives (64-bit Intel/AMD). Install it with sudo apt install ./cid_1.2.0_amd64.deb.
On macOS and Linux, workflows that run on your computer use Bash. On macOS they get the same PATH as your terminal, so Homebrew tools are found.
New look
Redesigned the whole app, with light and dark themes. Pick Light, Dark or System in Settings; the window's title bar follows along.
Ctrl+K search jumps to any page or project, starts a new workflow, or switches the theme.
The Overview now shows a 14-day activity chart and your success rate.
Workflows
Workflows open in a full-page editor instead of a small pop-up.
Each step is a multi-line code editor with syntax highlighting, so long commands are readable.
Drag steps to reorder them, and duplicate a step with one click.
Choose the shell for workflows that run on this computer: Command Prompt, PowerShell or Git Bash. PowerShell and Bash steps stop at the first error.
Give any step its own working folder, so you no longer need cd at the start of commands.
"Server" is now Runs on, with "This computer" as an option of its own.
Schedules show in plain English ("At 04:00 AM") and come with presets.
Duplicate a workflow, or Save & run straight from the editor.
CID warns you before you leave the editor with unsaved changes.
Runs
Run details open in a side panel from anywhere, with live, colour-coded logs, exit codes and how long each step took.
Run again from the run panel.
Filter runs by workflow, status and date range, with pages for long histories. Lists update live while runs happen.
CID tells you when a run finishes: in the app, and with a desktop notification when CID is in the background.
Other
CID checks this page for new versions and tells you when an update is available. See Settings → About CID.
Clearer confirmations everywhere. Deleting a project now asks you to type its name.
Existing workflows keep working as before: Command Prompt is still the default shell, and single-line commands run exactly as typed.
Run workflows on this computer. Pick "No server (run on this computer)" on a workflow and its steps run locally in the project's repository folder, using the system shell. No SSH server needed. Project variables and secrets are passed in as environment variables.
Artifacts. CID now keeps the files your runs produce in its own data folder (%APPDATA%\cid\artifacts\<project>\<workflow>\run-<n>).
Add artifact paths to a workflow (one per line, * allowed in file names) and CID copies them in after a successful run. On a server workflow they're downloaded over SFTP.
Local steps can also write straight to %CID_ARTIFACTS_DIR%.
The run panel lists a run's artifacts with an "Open folder" button, and Settings shows where the artifacts folder is.
Improved
Cancelling a run now stops the whole process tree for local steps, and cancelled runs are marked "cancelled" instead of "failed".
First version of CID: CI/CD that runs on your own computer.
Projects and workflows. Group workflows by project; each workflow is an ordered list of named steps.
Triggers. Run a workflow by hand, on every push to a branch, or on a cron schedule.
SSH deploys. Generate or import SSH keys, add servers, and test the connection. CID syncs your repository to the server over SFTP (optionally only the files that changed) and runs the steps there. No agent to install.
Proxy support. Route SSH connections through a SOCKS5 proxy.
Environment. Per-project variables and encrypted secrets, exported to every step.
Run history. Branch, commit, duration and status for every run, with live step-by-step logs and cancel.