🛰️ find · ping · time · gpu · shell — one scalar

Bright Utils

The unified home for BrightDate utilities — file search, networking, timing, GPU profiling, and the shell that ties them together. Every tool speaks the same timezone-free decimal day count since J2000.0. No translation step between your prompt, your logs, and your pipelines.

Each utility uses a b prefix for Bright (like btime, bfind, bgpucap) — a fork of a familiar GNU or system tool, not a thin wrapper, but a color-enhanced, feature-extended rebuild. BrightDate scalars, new predicates, spacetime metrics, GPU/CPU/memory profiling, and TTY-aware color output — while -printf, -f, and piped output stay plain for scripts.

# shell → files → timing → network → GPU/CPU/memory $ now=$BRIGHTEPOCH $ bfind . -after $now -name '*.rs' -printf '%Wt %p\n' | head -2 9628.197104 ./crates/btime/src/format.rs 9628.195697 ./find/print.c $ btime -f '%Wt %dE md' cargo test -q 9628.198441 0.004861 md $ bgpucap -f json --metrics basic sleep 1 > report.json $ bgpucap compare before.json after.json gpu 10.0 30.0 +20.0
Color & extensions → All tools Format spec bgpucap BrightDate.org BSH

One time representation. Every layer.

Unix timestamps, ISO 8601 strings, and local-midnight boundaries each solve part of the problem — and each introduce invisible complexity when tools disagree. BrightDate is a single f64: decimal SI days since the astronomical epoch J2000.0, on a TAI substrate. No timezone. No leap-second jumps. b − a = elapsed days, always.

In one sentence: BrightDate is a timezone-free SI-day count since J2000.0 (2000-01-01T11:58:55.816 UTC). BD 0.0 = the standard astronomical epoch. BD 9628 ≈ May 2026. Machine interchange and log correlation should prefer %W* at 9 decimal places.

Layer 1

BSH

Shell prompt %P, $BRIGHTEPOCH, stat, ls -l, TIMEFMT

Layer 2

brightdate-rust

Core library + bdate, btime, buptime, bcal, bwatch

Layer 3

bright-findutils

bfind, blocate, bupdatedb, bxargs

Layer 4

bright-iputils

bping, bclockdiff, btraceroute, bmtr, baudit

Layer 5

bgpucap

bgpucap wraps any command — GPU, CPU, unified memory on Apple Silicon; gpuexercise, watch, compare subcommands (crate: gpucap)

Color-enhanced. Feature-extended.

Bright Utils are not drop-in aliases. Each project forks a mature upstream (GNU findutils, iputils, GNU time/date, zsh) or adds a new tool (bgpucap, crate gpucap) and extends it with BrightDate-native behavior plus interactive polish: semantic color on TTYs, richer reports, and capabilities the stock tools never had. Machine output stays script-safe — color applies to human-facing reports; -printf, -f, and pipes remain plain text.

🎨 Shared color system

Interactive tools share a consistent --color / --color-scheme model:

Flag Behavior
--color=auto Colorize when stdout/stderr is a TTY (default)
--color=always Force color even when piped
--color=never Plain text everywhere
--color-scheme Palette selection (e.g. default, bright)

Used by bfind, btime, bgpucap, bping, btraceroute, bmtr, baudit, and more. BrightDate integers, fractional parts, labels, and efficiency scores each get distinct hues so you can scan output at a glance.

✨ What gets added

Stock tool Bright extension
find -after/-before, %W*, BD -daystart
ping Light-floor, geo distance, efficiency %, ECEF coords, per-hop trace
time %Wt/%Ws, milliday durations, CPU heat colors
time (GPU) bgpucap — GPU/CPU/memory avg & peak, -f json, watch, compare, gpuexercise
traceroute Per-hop geoIP, RTT in md, path-length vs direct comparison
bmtr, baudit — new tools, not upstream forks
# same data — color on TTY, plain when piped to awk $ bfind . -maxdepth 2 -type f -printf '%Wt %p\n' | head -1 9628.197104 ./src/main.rs $ btime cargo build -q # default report — colorized on TTY real 0.420000 md (36.288 s) user 0.312500 md CPU 74% $ bping --color=always -c 1 8.8.8.8 2>&1 | tail -4 geo distance = 3.644 mBM (~1092 km) efficiency = 34.90% $ bgpucap ffmpeg -i in.mp4 out.mp4 # colored GPU/CPU/memory report on stderr gpu avg 12.3% peak 45.6% cpu avg 8.1% peak 23.4% memory avg 52.0% peak 55.1%

Extensions by project

🔎

bright-findutils

--color new predicates
  • -after / -before — BD scalar time filters
  • %Wt/%Wa/%Wc/%WB printf family
  • -daystart floors to BD integer, not local midnight
  • -newer* accepts BrightDate literals first
  • blocate --statistics shows DB age as BD
📡

bright-iputils

--color BrightSpace
  • Light-floor (RTT/2 at c) in mBM and km
  • Great-circle geo distance + efficiency scoring
  • RTT in millidays alongside milliseconds
  • ECEF coordinates via BrightNexus / BrightLink
  • bmtr live rolling probe; baudit multi-anchor bounding
🦀

brightdate-rust

--color %W* / %d*
  • btime -f '%Wt %dE md' — machine timing strings
  • Default report colorizes elapsed, CPU %, and timestamps
  • --color=ansi / truecolor / plain
  • bdate, bcal, buptime, bwatch — full CLI suite
  • Reference brightdate crate for every other project
🐚

BSH

prompt built-ins
  • Prompt %P — live BrightDate in the shell line
  • $BRIGHTEPOCH exported for downstream tools
  • stat, ls -l, history -d show BD
  • TIMEFMT with %dE/%dU/%dS millidays
  • Natural pipeline host for every b* binary
🖥️

bgpucap

--color Apple Silicon
  • Command bgpucap; crate gpucap on crates.io
  • Wrap any command like time(1) — GPU, CPU, unified memory
  • --metrics / --list-metrics — filter output; basic skips extended IOReport
  • -f json on stdout; compare diffs two JSON reports (common metrics only)
  • watch — continuous sampling; NDJSON live lines with -f json
  • gpuexercise — Metal load with best-effort / load / sample modes
  • --pid, --no-track-gpu — per-process GPU via IORegistry
  • macOS arm64 only — IOKit AGX metrics + Mach host stats

What we built.

Five projects, one scalar. Each renames GNU or system utilities with a b prefix for Bright (or adds a new tool like bgpucap, crate gpucap) so they coexist with stock tools — then extends them with BrightDate semantics, interactive color, and domain-specific features the originals never had. All share the same J2000.0 / TAI semantics from brightdate-rust.

🐚

BSH — BrightShell

A zsh-compatible shell where BrightDate is woven into every time-related surface. Color prompt, exported epoch, built-in commands — the natural home for the whole pipeline.

%P prompt TIMEFMT
date · ls -l · stat · history -d
$BRIGHTEPOCH · prompt %P · TIMEFMT %d*
🦀

brightdate-rust

Canonical Rust implementation. Core library plus CLI replacements for date, time, uptime, cal, and watch — with colorized default reports and %W* format strings.

--color btime -f
bdate · btime · buptime · bcal · bwatch
🔎

bright-findutils

GNU findutils 4.10.0 re-dressed for BrightDate. New predicates, %W printf, BD -daystart, and colorized interactive output.

--color -after/-before
bfind · blocate · bupdatedb · bxargs
📡

bright-iputils

Linux & macOS networking tools extended with BrightSpace: light-floor, milliday RTT, geo distance, efficiency scoring, and full-color hop tables.

--color bmtr · baudit
bping · bclockdiff · btraceroute · bmtr · baudit
🖥️

bgpucap

Run any command like time(1) and report GPU, CPU, and unified memory on Apple Silicon. Colorized stderr reports; -f json on stdout; watch and compare subcommands. Crate: gpucap.

--color watch · compare
bgpucap · watch · compare · gpuexercise · man bgpucap
📦

@brightchain/brightdate

TypeScript/JavaScript library. Same J2000.0 / TAI semantics for Node.js, Deno, and the browser.

npm package · browser + server
🍺

Homebrew tap

All Digital Defiance BrightDate tools from one tap. Install the whole stack with short names.

brew tap digital-defiance/tap
brew install bsh bright-findutils bright-iputils bgpucap
brew install bdate btime buptime bcal bwatch

Homebrew symlinks gpucapbgpucap for backward compatibility.

# correlate file mtime, command timing, and network RTT — same unit family $ bfind src -name '*.c' -printf '%Wt %p\n' | sort -rn | head -1 9628.197104 src/pred.c $ btime -f 'end=%Wt elapsed=%dE md' make -C find bfind end=9628.198512 elapsed=2.314815 md $ bping -c 1 8.8.8.8 2>&1 | grep 'rtt.*md' rtt min/avg/max/mdev = 0.00019259/0.00019259/0.00019259/0.00000000 md

Unified % formatting.

BrightDate format characters across the ecosystem. Scalar semantics follow brightdate-rust (TAI substrate, J2000.0 epoch, SI days). Utilization specifiers are defined by bgpucap -f. Full spec: FORMAT-SPEC.md.

Tier A

%W<letter> — absolute BrightDate scalar

Output: decimal SI days since J2000.0, %.9f, no unit suffix.

Specifier bfind -printf btime / bgpucap -f
%Wt File mtime Command end wall time
%Ws — (not applicable) Command start wall time
%Wa File atime
%Wc File ctime
%WB File birth time
%W<other> Same as %Wt (mtime) GNU swap count (%W not followed by t/s)

Color: bfind --color and btime default report colorize on TTY; -printf / -f output is plain text.
Aliases in btime -f only: %N%Ws, %n%Wt (same 9 d.p. values).

Tier B

Duration in millidays

Specifier Output BSH TIMEFMT btime -f
%dE Elapsed (real) %.6f md %.6f md
%dU User CPU %.6f md %.6f md
%dS System CPU %.6f md %.6f md
%b Elapsed millidays %.6f (machine; no suffix)

Conversion: millidays = seconds ÷ 86.4

Tier C

btime -f timing extensions (GNU -f namespace)

These letters reuse GNU time -f slots with BrightDate meaning inside btime -f only. Do not use in bfind -printf (different GNU meanings there).

Specifier Meaning Output
%B Elapsed wall time {:.9} BrightDate days
%b Elapsed wall time {:.6} millidays (no suffix)
%N / %n Start / end wall time {:.9} (same as %Ws / %Wt)

Standard GNU letters (%E, %e, %U, %S, %P, %C, %M, …) behave as GNU time 1.10.

Tier D

Display surfaces (human, not -printf)

Fixed formatting, not user format strings:

Surface Typical precision Notes
BSH prompt %P 6 d.p. Current BrightDate
stat / ls -l 6 d.p. File timestamps
btime default report 6–9 d.p. Multi-line, optional color
bgpucap default report 1 d.p. GPU/CPU/memory avg & peak; color on stderr TTY
BSH TIMEFMT %d* 6 d.p. + md Shell time keyword
Tier E

bright-iputils — suffix notation

bright-iputils does not implement -printf specifiers. It uses explicit unit suffixes:

Suffix Meaning
md Millidays
ud Microdays
nd Nanodays
d Days

Example: bclockdiff -B115740.740740741ud. Semantically equivalent to BrightDate sub-day units; different syntax from %W*.

Tier F

bgpucap — utilization -f specifiers

bgpucap -f / BGPUCAP_FORMAT adds utilization letters on top of BrightDate timing (tiers A–C). (GPUCAP_FORMAT still accepted.) Use -f json for structured output on stdout (respects --metrics). Percentages output one decimal place, no % suffix. When -f is set (except json), output is plain text — even with --color=always.

Specifier Meaning
%gA / %gPGPU average / peak
%uA / %uPCPU average / peak (system-wide)
%hA / %hPUnified memory average / peak
%tGExercise target GPU % (gpuexercise only)
%Ws / %WtCommand start / end wall time (9 d.p. BD)
%dE / %bElapsed millidays
%e / %E / %C / %xElapsed seconds, GNU elapsed, command line, exit status

Default machine format: %gA,%gP,%uA,%uP,%hA,%hP,%e,%Ws,%Wt\n

Not unified

Intentionally different meanings

Pattern Reason
%b in bfind GNU 512-byte blocks
%B in bfind GNU birth-time strftime (%Bk)
%n in bfind GNU hard-link count
%*E, %m*, %u*, %n* in TIMEFMT zsh/BSH shell time keyword only
%b / %B in bdate --strftime POSIX month names (chrono), not millidays

Implementation references: crates/btime/src/format.rs (timing), gpucap/src/format.rs (GPU utilization), bright-findutils/find/print.c (files), bsh/Src/jobs.c (TIMEFMT).

Install the stack.

1

Add the Homebrew tap (once)

brew tap digital-defiance/tap
2

Install what you need

# Shell + file tools + networking + GPU (macOS arm64)
brew install bsh bright-findutils bright-iputils bgpucap

# Rust CLI utilities
brew install bdate btime buptime bcal bwatch

On Ubuntu/Debian, bright-iputils is also available via PPA: ppa:digital-defiance/bright-iputils. bgpucap is macOS Apple Silicon only (Homebrew bgpucap or cargo install gpucap → executable bgpucap).

3

Verify the pipeline

bdate                    # current BrightDate
bfind ~ -maxdepth 1 -printf '%Wt %p\n' | head -3
btime -f '%Wt %dE md' sleep 1
bping -c 1 127.0.0.1
bgpucap -f '%gA,%uA,%e' sleep 0.1   # macOS Apple Silicon
bgpucap watch -n 5                  # continuous sampling
bgpucap compare before.json after.json

Per-project build instructions and platform notes live in each repo's README and docs site: bright-findutils, bright-iputils, bgpucap, brightdate-rust, BSH.