Claude Code skills and the lab build orchestrator for the Hero stack.
  • Rust 80.9%
  • Nushell 14.9%
  • Shell 4.1%
Find a file
mik-tf 17fb42cf78
All checks were successful
lab publish / publish (push) Successful in 21m39s
merge remote release-tag support
2026-06-09 22:10:49 -04:00
.forgejo ci(lab-publish): install lab from the checked-out commit, not development 2026-06-08 17:14:35 +02:00
.hero chore: normalize inline comment spacing across all markdown and source files 2026-05-26 10:36:32 +02:00
_archive refactor(skills): reorganize blueprint skills, expand sockets/oschema/server docs 2026-05-31 20:06:33 +02:00
_beta refactor(skills): reorganize skill directories and update herolib/blueprint content 2026-05-30 07:41:41 +02:00
agents/default chore: normalize inline comment spacing across all markdown and source files 2026-05-26 10:36:32 +02:00
crates fix(lab): add --release-tag to lab build so the publish workflow works 2026-06-09 09:50:29 +02:00
docs chore: normalize inline comment spacing across all markdown and source files 2026-05-26 10:36:32 +02:00
hero_os_architecture refactor(skills): reorganize skill directories and update herolib/blueprint content 2026-05-30 07:41:41 +02:00
howto chore: normalize inline comment spacing across all markdown and source files 2026-05-26 10:36:32 +02:00
knowledge chore: normalize inline comment spacing across all markdown and source files 2026-05-26 10:36:32 +02:00
meetingnotes chore: normalize inline comment spacing across all markdown and source files 2026-05-26 10:36:32 +02:00
nutools chore: normalize inline comment spacing across all markdown and source files 2026-05-26 10:36:32 +02:00
prompts chore(prompts): add upload_repos/repospush prompts, update migrations, extend infocheck for baso_info! 2026-06-01 20:04:51 +02:00
research/memory chore: normalize inline comment spacing across all markdown and source files 2026-05-26 10:36:32 +02:00
scripts lab_install: default to the main branch (stable), not development 2026-06-08 16:22:44 +02:00
servers chore: normalize inline comment spacing across all markdown and source files 2026-05-26 10:36:32 +02:00
skills chore(skills): document workspace inheritance rules for crate Cargo.toml fields 2026-06-01 08:42:41 +02:00
.gitignore refactor: Consolidate code directories and simplify paths 2026-05-13 12:30:28 +03:00
Cargo.lock Revert "ci(deps): TEMP pin hero_proc_sdk + herolib_* to explicit revs" 2026-06-08 17:12:55 +02:00
Cargo.toml chore(prompts+skills): archive old multi-action/kimi prompts, add migration skills and focused fix prompts 2026-06-01 06:58:20 +02:00
main refactor(lab): drop cranelift fast-build and colorize terminal output 2026-05-29 10:21:34 +02:00
README.md lab_install: default to the main branch (stable), not development 2026-06-08 16:22:44 +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

Quick start (fresh machine)

Bring up the core Hero stack (hero_proc → mycelium → hero_router) from scratch:

  1. curl -sSfL https://forge.ourworld.tf/lhumina_code/hero_skills/raw/branch/main/scripts/lab_install.sh | bash — install lab into ~/hero/bin.
  2. export FORGE_TOKEN=<token> — set your Forge access token (used for repo clones + git deps).
  3. lab user init — install Rust + nushell, write hero_cfg.toml, configure the shell.
  4. lab install core — install base tools, sccache, Rust, and hero_proc.
  5. lab service infra --start --build — build + start hero_proc → mycelium → hero_router, in order.

infra is exactly those three services; add --release for optimized binaries.


Getting lab

Install (download or build from source)

curl -sSfL https://forge.ourworld.tf/lhumina_code/hero_skills/raw/branch/main/scripts/lab_install.sh | bash

lab_install.sh detects your platform (macOS/Linux, arm64/x86_64), downloads the pre-built binary from Forgejo into ~/hero/bin/lab, and falls back to building from source if no binary is available.


First-time setup

After installing 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

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)