Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Development

ankurCES edited this page Jun 4, 2026 · 2 revisions

Development

Layout

crates/ the Rust workspace (see README for the per-crate map)
blugo/ the Flutter phone app (outside the cargo workspace)
crates/blumi-web/frontend/ the React + Vite + TS web UI
docs/screenshots/ images used by the README
.github/workflows/ci.yml CI (Rust gate + Flutter gate)

Build & test

cargo build
cargo test --all-features
cargo clippy --all-targets --all-features -- -D warnings
cargo fmt --all --check

The web UI's built dist/ is committed and embedded via rust-embed, so cargo build needs no JS toolchain. To work on the web UI:

cd crates/blumi-web/frontend && npm install && npm run build

The phone app:

cd blugo && flutter pub get && flutter analyze && flutter test

CI

.github/workflows/ci.yml runs on every push to main and on PRs:

  • rustcargo fmt --check, clippy --all-targets --all-features -D warnings, test --all-features (ubuntu, stable toolchain).
  • flutterflutter analyze + flutter test in blugo/ (Flutter 3.44.1).

Keep both green. Note CI runs on Linux, so platform-gated code (e.g. macOS-only launchd helpers) must be #[cfg]-guarded to avoid dead-code under -D warnings.

Conventions

  • Per-change gate green before committing; Rust feature work merges to main via --no-ff.
  • Commits authored by ankurCES; include the trailer Co-Authored-By: Blumi.
  • Secrets (settings.json, keystores, key.properties) are gitignored — never commit them.

Where things live

  • Agent loop / session actor: crates/blumi-core.
  • Tools: crates/blumi-tools (+ self-management tools in crates/blumi-skills).
  • HTTP/SSE API: crates/blumi-web (handlers in src/api.rs, routes/state in src/lib.rs).
  • Gateway command + service mgmt + grid: crates/blumi/src/{serve.rs,web.rs,grid/,discovery.rs}.
  • TUI: crates/blumi-tui.

Clone this wiki locally

AltStyle によって変換されたページ (->オリジナル) /