Skip to content

Siderskini/CodexBar

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,604 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CodexBar Rust Workspace

Disclaimer: The majority of the work in this fork (including this README) has been done via Codex and there is a scancode toolkit result published in this repository for that work

Files Accessed by the Rust Extension

For the Rust components in KDE Plasma/rust, file access is limited to:

  • codexbar-service executable path itself (invoked by the widget command you configure).
  • codexbar executable file in the same directory as codexbar-service (if present), otherwise codexbar resolved from PATH.
  • ~/.claude/.credentials.json (read-only, to load Claude OAuth tokens produced by claude auth login).
  • ~/.gemini/settings.json (read-only, to detect Gemini auth type).
  • ~/.gemini/oauth_creds.json (read/write, to load and refresh Gemini OAuth tokens).
  • Gemini CLI installation files near the gemini binary (read-only, to extract OAuth client ID/secret from oauth2.js).
  • ~/.codexbar/config.json (read/write for Cursor cookieHeader during auth; read for provider apiKey values such as Copilot).
  • secret-tool executable from PATH (preferred secure store backend for Claude credentials).
  • kwallet-query executable from PATH (KDE Wallet secure store fallback for Claude credentials).
  • --input <path>: reads only the file at <path> (optional, when this flag is used).
  • --write-cache <path>: writes only to <path> and may create its parent directory (optional, when this flag is used).

Credential storage is handled through system keyrings (secret-tool or KDE Wallet via kwallet-query), not plaintext files. No other fixed file paths are hardcoded by the Rust code in this repository.
Note: codexbar calls external codex, claude, gemini, and gh CLIs; any extra file access from those programs is outside this project.

This workspace is the starting point for a Linux/KDE-native rebuild:

  • crates/codexbar-core: shared snapshot/domain models.
  • crates/codexbar-cli: Rust codexbar CLI bootstrap (usage output contract).
  • crates/codexbar-service: CLI service that emits Plasma-friendly JSON snapshots.
  • crates/codexbar-kde-bridge: IPC/DBus boundary contract for future live transport.

Local build

cd "KDE Plasma/rust"
cargo fmt
cargo check

Build CLIs

cd "KDE Plasma/rust"
cargo build --release -p codexbar-cli -p codexbar-service

Emit a snapshot

Sample snapshot:

cd "KDE Plasma/rust"
cargo run -p codexbar-service -- snapshot --pretty

From installed codexbar CLI:

cd "KDE Plasma/rust"
cargo run -p codexbar-service -- snapshot --from-codexbar-cli --provider all --status --pretty

Claude account setup

Browser-based setup (used by widget "Add Account..."):

codexbar-service auth --provider claude

Direct CLI equivalent:

codexbar auth --provider claude

GitHub Copilot account setup

Browser-based setup (used by widget "Add Account..."):

codexbar-service auth --provider copilot

Direct CLI equivalent:

codexbar auth --provider copilot

Cursor account setup

Browser-assisted setup (used by widget "Add Account..."):

codexbar-service auth --provider cursor

Direct CLI equivalent:

codexbar auth --provider cursor

License Scan

A ScanCode license scan of the KDE Plasma folder was run with:

scancode -clpieu --json-pp codexbar.json /home/sidd/Documents/GitHub/CodexBar/KDE\ Plasma

An additional License scan for rust was run via:

cd KDE\ Plasma/rust
cargo license

and the current output should be

 $ cargo license
(Apache-2.0 OR MIT) AND Unicode-3.0 (1): unicode-ident
Apache-2.0 OR MIT (25): anstream, anstyle, anstyle-parse, anstyle-query, anstyle-wincon, anyhow, clap, clap_builder, clap_derive, clap_lex, colorchoice, heck, is_terminal_polyfill, itoa, once_cell_polyfill, proc-macro2, quote, serde, serde_core, serde_derive, serde_json, syn, utf8parse, windows-link, windows-sys
MIT (6): codexbar-cli, codexbar-core, codexbar-kde-bridge, codexbar-service, strsim, zmij
MIT OR Unlicense (1): memchr

Results are saved in KDE Plasma/codexbar.json.

About

CodexBar: https://codexbar.app. I'm converting this to a KDE Plasma Panel

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • Swift 91.0%
  • QML 4.0%
  • Rust 3.2%
  • Shell 1.7%
  • JavaScript 0.1%