No description
- Rust 78.1%
- Nushell 18%
- Shell 3.9%
Move OS, text, and AI-basic skills to herolib_base; move AI, git, import, openrpc_authorize, and base skills to herolib_advanced. Expand bootstrap.md section 8 with canonical lab path usage across shell, nushell, and Rust. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .forgejo/workflows | ||
| .hero | ||
| _archive | ||
| _beta | ||
| agents/default | ||
| claude | ||
| crates | ||
| docs | ||
| hero_os_architecture | ||
| howto | ||
| knowledge | ||
| meetingnotes | ||
| nutools | ||
| prompts | ||
| research/memory | ||
| scripts | ||
| servers | ||
| skills | ||
| .gitignore | ||
| Cargo.lock | ||
| Cargo.toml | ||
| README.md | ||
Hero Skills
Claude Code skills and the lab build orchestrator for the Hero stack.
What is lab?
lab is a Cargo-native Hero build orchestrator. It discovers binary targets, skips unchanged ones via fingerprinting, copies built binaries to ~/hero/bin, manages Forgejo repos, syncs secrets via hero_proc, and runs AI agents.
lab [flags] — build binaries in the current repo
lab build [REPO] [flags] — find/clone a named repo then build it
lab user init — install Rust + nushell, write hero_cfg.toml, configure shell
lab install core — full install (AI tools, hero_proc, ...)
lab repo <verb> — Forgejo repo management
lab secrets <verb> — hero_proc / file-based secrets management
lab skills edit|sync — manage Claude Code skills
lab agent 'instruction' — run an AI agent instruction
Getting lab
Download pre-built binary (fastest)
curl -sSfL https://forge.ourworld.tf/lhumina_code/hero_skills/raw/branch/development/scripts/lab_install.sh | bash
This downloads the lab binary for your platform into ~/hero/bin/lab.
Build from source
# clone the repo if needed
git clone https://forge.ourworld.tf/lhumina_code/hero_skills ~/hero/code/hero_skills
bash ~/hero/code/hero_skills/scripts/lab_build.sh
Or from inside the repo:
cargo build -p lab
cp target/debug/lab ~/hero/bin/lab
First-time setup (macOS / Linux single-user)
After getting lab:
export PATH="$HOME/hero/bin:$PATH"
lab user init # install Rust + nushell, configure shell, prompt for FORGE_TOKEN
lab install core # install AI tools, hero_proc, etc.
lab user init generates:
~/hero/cfg/init.sh— bash environment (PATH_ROOT, CARGO_HOME, sccache, …)~/.config/nushell/env.nu— nushell equivalent, sets NU_LIB_DIRS and loads Hero modules~/.config/nushell/config.nu— sources hero_loader.nu and config_user.nu
Linux development server (multi-user)
From a fresh root shell:
curl -sSfL https://forge.ourworld.tf/lhumina_code/hero_skills/raw/branch/development/scripts/bootstrap.sh | sudo bash
bootstrap.sh (Linux only, UID 0):
- Creates the
driveruser with passwordless sudo. - Downloads
labfrom the latest Forge release. - Runs
lab user initas driver (installs Rust + nushell, stores FORGE_TOKEN). - Hands off to
lab flow install.
Building and uploading a release
lab build --upload --platforms allbase -v
Builds for macos-arm64, linux-musl-arm64, linux-musl-x86_64 and uploads to Forgejo.
Getting a FORGE_TOKEN
Required for lab repo and lab secrets:
- Go to https://forge.ourworld.tf/user/settings/applications
- Generate a token with
read:repository+write:repositoryscopes - Set
FORGE_TOKENin your environment (or letlab user initprompt for it)