No description
  • Rust 78.1%
  • Nushell 18%
  • Shell 3.9%
Find a file
despiegk d56b7594de
Some checks failed
Build and Test (lab workspace) / build-and-test (push) Failing after 1s
Publish edge build / build-and-publish (push) Failing after 2s
skills: split herolib skills into herolib_base and herolib_advanced; expand bootstrap lab path docs
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>
2026-05-17 06:58:33 +02:00
.forgejo/workflows ci(edge): switch to rust:latest, drop musl cross-compile 2026-05-13 15:37:21 +02:00
.hero chore(lab): bump build to 56/61 and simplify install scripts 2026-05-12 09:00:02 +02:00
_archive refactor(lab): overhaul install scripts, user cfg, and docs 2026-05-16 19:33:23 +02:00
_beta refactor(lab): overhaul install scripts, user cfg, and docs 2026-05-16 19:33:23 +02:00
agents/default feat(lab): add Kimi agent config, MCP runner, OpenRPC client, and skills infrastructure 2026-05-16 13:05:28 +02:00
claude refactor(skills): reorganize skill files and add mother-skill sync for Claude+Kimi 2026-05-16 08:09:21 +02:00
crates lab: stop touching init.sh; gate lab path on what's installed; install sccache to PATH_ROOT 2026-05-17 04:50:15 +02:00
docs feat(scripts): add uninstall.sh + clarify hero_cfg.toml authorship 2026-05-11 11:22:49 +00:00
hero_os_architecture fix(lab): single-daemon mycelium cleanup, user-IP bind, IPv6 forward, nu env.nu 2026-05-13 15:32:15 +02:00
howto docs: update tools/ references to nutools/ in README, skills, architecture docs 2026-05-06 05:52:31 +02:00
knowledge skills: split herolib skills into herolib_base and herolib_advanced; expand bootstrap lab path docs 2026-05-17 06:58:33 +02:00
meetingnotes refactor: replace all zinit references with hero_proc (#68) 2026-03-20 11:39:39 -04:00
nutools lab: add 'lab path' command, extract export generators 2026-05-16 21:59:16 +02:00
prompts fix: remove unused merge_with_agent import and add --info requirement to build prompt 2026-05-10 13:11:54 +02:00
research/memory fix(submodule): remove orphaned vast_ai_research gitlink 2026-05-12 07:11:27 +02:00
scripts lab: stop touching init.sh; gate lab path on what's installed; install sccache to PATH_ROOT 2026-05-17 04:50:15 +02:00
servers make-file helper 2026-02-05 07:25:03 +04:00
skills skills: split herolib skills into herolib_base and herolib_advanced; expand bootstrap lab path docs 2026-05-17 06:58:33 +02:00
.gitignore refactor: Consolidate code directories and simplify paths 2026-05-13 12:30:28 +03:00
Cargo.lock feat(lab): add Kimi agent config, MCP runner, OpenRPC client, and skills infrastructure 2026-05-16 13:05:28 +02:00
Cargo.toml fix(lab): wire service.toml + herolib_core::base, fix nushell completions source 2026-05-13 08:12:47 +02:00
README.md refactor(lab): overhaul install scripts, user cfg, and docs 2026-05-16 19:33:23 +02:00

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):

  1. Creates the driver user with passwordless sudo.
  2. Downloads lab from the latest Forge release.
  3. Runs lab user init as driver (installs Rust + nushell, stores FORGE_TOKEN).
  4. 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:

  1. Go to https://forge.ourworld.tf/user/settings/applications
  2. Generate a token with read:repository + write:repository scopes
  3. Set FORGE_TOKEN in your environment (or let lab user init prompt for it)