Skip to content
CAI
Software that uses CAICheck a score

dalance/procs

59.9

Adequate · 29 September 2026

15.1k

lines of production code

Rust

primary language

2

measurements over time

CAI band scale
CAI trend line
CAI lens gauges

What this system is

Procs is a modern, cross-platform process viewer written in Rust, serving as a replacement for the traditional \ps\ command. It provides detailed process monitoring capabilities across Linux, macOS, Windows, and FreeBSD by leveraging native OS APIs to expose metrics such as network I/O, thread counts, and resource usage. The system supports advanced filtering via regex, customizable display configurations through TOML files, and includes features like a built-in pager and shell completions.

Features

Initial release of procs v0.14.12

This entry marks the initial commit and release of the procs tool (v0.14.12), a modern replacement for \ps\ written in Rust. The release includes a comprehensive CHANGELOG detailing new Windows-specific columns (Arch, Priority, Threads, Session, State, Env, RecvBytes, SendBytes, WorkDir), support for BSD and FreeBSD, a built-in pager, and various bug fixes. The repository structure is established with a Makefile for cross-platform builds (Linux, macOS, Windows, ARM64), a snapcraft.yaml for Snap packaging, and a build.rs script for generating shell completions and man pages at build time.

(repo-wide) · high confidence

New process information columns added

The process list now includes several new columns to provide deeper insight into running processes. Users can now view the process architecture (Arch), the compressed cgroup path (Cgroup (compressed)), the raw cgroup path (Cgroup), the command line (Command), context switches (ContextSw), CPU time (CPU Time), Docker container association (Docker), the instruction pointer (EIP), elapsed time since start (Elapsed), environment variables (Env), the stack pointer (ESP), the executable file name (FileName), group identifiers (GID, FGID, RGID, SGID), and group names (Group). These additions enhance the ability to monitor and troubleshoot processes across Linux, macOS, Windows, and FreeBSD.

src/columns · high confidence

Behavioural changes

The \src\ directory has been completely rewritten to replace the previous \structopt\-based CLI with \clap\, introducing new command-line flags such as \--gen-config\, \--gen-completion\, and \--load-config\. Configuration is now managed via a structured \Config\ type loaded from TOML files (e.g., \\~/.config/procs/config.toml\), supporting advanced display options like column alignment, sorting, and theme detection. The application now supports regex-based process filtering with a fallback to \fancy\_regex\ for advanced patterns, and introduces a built-in pager with \less\-compatible keybindings for viewing output.

src · high confidence

Rewrite process collection with native OS APIs and expanded metrics

The process module has been rewritten to use platform-specific native APIs instead of the previous \procfs\-based approach, introducing dedicated implementations for Linux, macOS, FreeBSD, and Windows. This change significantly expands the available process metrics: Linux now supports thread-level collection and kernel thread filtering; macOS and FreeBSD expose thread counts, network I/O (TCP/UDP), and resource usage; and Windows now provides detailed CPU, memory, disk, and network counters, along with user SID resolution, session IDs, and work directory information. The rewrite also introduces a configuration option to hide kernel threads across all supported platforms.

src/process · high confidence

Test coverage

Add RPM build specification file

Added a new .rpm/procs.spec file that defines the packaging metadata and build instructions for creating an RPM package for the 'procs' application, including build root configuration, installation steps, and file listing.

.rpm · high confidence

Dependencies

Update to procs v0.14.12 with Rust 2024 edition and MSRV 1.88

The procs package is updated to version 0.14.12, migrating to the Rust 2024 edition and raising the Minimum Supported Rust Version (MSRV) to 1.88. This release includes a comprehensive update of dependencies, notably upgrading clap to 4.4, toml to 1.1, and procfs to 0.18.0 on Linux/Android, while also enabling Link-Time Optimization (LTO) in the release profile.

(dependencies) · high confidence

Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.

How this codebase got here

Score

  • CAI 63 → 60 (-2.9)
  • Rubric changed (rubric-2026.09.9 → rubric-2026.09.18) — scores are not directly comparable.

Lenses

  • Code Health 89 → 89 (+0.0)
  • Architecture 100 → 88 (-11.5)
  • Maturity 51 → 51 (-0.0)
  • Readiness 76 → 55 (-20.8)
  • Security 60 → 73 (+13.5)

Resolved (2)

  • Documentation: no installation or build instructions (README.md)
  • Documentation: no usage examples (README.md)

New (2)

  • Dependency hygiene PARTLY measured — Cargo dependencies read, dependency currency not (crates.io unreachable)
  • Projects may be oversized for their cohesion

Changes since last survey

  • 10 commits — 10 feature/other, 0 fixes

By area

  • (repo) — 5 commits
  • (root) — 5 commits

Notable commits

  • change: Merge pull request #977 from dalance/dependabot/cargo/console-0.16.6
  • change: Merge pull request #978 from dalance/dependabot/cargo/toml-1.1.6spec-1.1.0
  • change: Merge pull request #979 from dalance/dependabot/cargo/fancy-regex-0.19.2
  • change: Merge pull request #980 from dalance/dependabot/cargo/byte-unit-5.2.6
  • change: Merge pull request #981 from dalance/dependabot/cargo/minus-5.8.0
  • change: build(deps): bump byte-unit from 5.2.5 to 5.2.6
  • change: build(deps): bump console from 0.16.4 to 0.16.6
  • change: build(deps): bump fancy-regex from 0.19.1 to 0.19.2
  • change: build(deps): bump minus from 5.7.2 to 5.8.0
  • change: build(deps): bump toml from 1.1.5+spec-1.1.0 to 1.1.6+spec-1.1.0

Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.

Survey your own repository

dalance/procs was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.

About this page

  • The score is its most recent published measurement, taken on 29 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
  • Measured at commit 52e223b95c1572c458dd6447b0b8dc5fe8e30852 — the exact code this score is about.
  • Scored under rubric-2026.09.18 — the same rubric and the same method as every other entry in this index.
  • Measured by watchdog.canine.dev using codehealth-analyzer preprod-c4983f2d4e5c.