feat(services): add service_shrimp.nu lifecycle module #170

Merged
mahmoud merged 2 commits from development_service_shrimp_lifecycle into development 2026-04-29 13:16:07 +00:00
Member

Summary

Adds service_shrimp.nu, the Hero shell lifecycle module for the hero_shrimp stack. The module exposes install | start [--reset] [--update] [--release] | stop | status, registers two hero_proc actions (hero_shrimp_server, hero_shrimp_ui) plus the hero_shrimp service, and follows the canonical Rust-multi-binary selfstart pattern documented in nu_service / nu_service_use / hero_proc_service_selfstart.

Single-instance, user-level — no --root, no --instance, no reset subcommand. LLM provider keys (OPENROUTER_API_KEYS, OPENAI_API_KEYS, ANTHROPIC_API_KEYS, GROQ_API_KEYS, SAMBANOVA_API_KEYS) plus SHRIMP_HOME and SHRIMP_DATA_DIR are forwarded from the invoking shell into the server action env when set. A non-fatal preflight prints a warning if no provider keys are present.

Closes #155

Changes

  • NEW tools/modules/services/service_shrimp.nu (282 lines)
    • Constants: SVX_SERVICE_NAME, SVX_FORGE_LOC, SVX_BINARIES (4 bins), SVX_ACTIONS (2 actions), SVX_DESCRIPTION, SVX_PROVIDER_KEYS.
    • Action builders for hero_shrimp_server (rpc + admin sockets in kill_other, rpc.sock health-checked) and hero_shrimp_ui (ui.sock).
    • start summary block prints sockets, hero_router UI URL, data dir, and a short test plan.
    • Startup-log fallback tails 30 lines from both action and service log streams.
  • MODIFIED tools/modules/services/mod.nuexport use service_shrimp.nu.

Test results

Parse-and-export smoke check, 5/5 passed:

Check Result
use services/mod.nu * parses ok
service_shrimp install help ok
service_shrimp start help ok
service_shrimp stop help ok
service_shrimp status help ok

start exposes --reset(-r), --update(-u), --release. No --root or --instance on any subcommand. End-to-end install/start/stop on a host requires hero_proc running and lhumina_code/hero_shrimp reachable; left for operator validation.

## Summary Adds `service_shrimp.nu`, the Hero shell lifecycle module for the `hero_shrimp` stack. The module exposes `install | start [--reset] [--update] [--release] | stop | status`, registers two hero_proc actions (`hero_shrimp_server`, `hero_shrimp_ui`) plus the `hero_shrimp` service, and follows the canonical Rust-multi-binary selfstart pattern documented in `nu_service` / `nu_service_use` / `hero_proc_service_selfstart`. Single-instance, user-level — no `--root`, no `--instance`, no `reset` subcommand. LLM provider keys (`OPENROUTER_API_KEYS`, `OPENAI_API_KEYS`, `ANTHROPIC_API_KEYS`, `GROQ_API_KEYS`, `SAMBANOVA_API_KEYS`) plus `SHRIMP_HOME` and `SHRIMP_DATA_DIR` are forwarded from the invoking shell into the server action env when set. A non-fatal preflight prints a warning if no provider keys are present. ## Related Issue Closes https://forge.ourworld.tf/lhumina_code/hero_skills/issues/155 ## Changes - **NEW** `tools/modules/services/service_shrimp.nu` (282 lines) - Constants: `SVX_SERVICE_NAME`, `SVX_FORGE_LOC`, `SVX_BINARIES` (4 bins), `SVX_ACTIONS` (2 actions), `SVX_DESCRIPTION`, `SVX_PROVIDER_KEYS`. - Action builders for `hero_shrimp_server` (rpc + admin sockets in `kill_other`, rpc.sock health-checked) and `hero_shrimp_ui` (ui.sock). - `start` summary block prints sockets, hero_router UI URL, data dir, and a short test plan. - Startup-log fallback tails 30 lines from both action and service log streams. - **MODIFIED** `tools/modules/services/mod.nu` — `export use service_shrimp.nu`. ## Test results Parse-and-export smoke check, 5/5 passed: | Check | Result | |---|---| | `use services/mod.nu *` parses | ok | | `service_shrimp install` help | ok | | `service_shrimp start` help | ok | | `service_shrimp stop` help | ok | | `service_shrimp status` help | ok | `start` exposes `--reset(-r)`, `--update(-u)`, `--release`. No `--root` or `--instance` on any subcommand. End-to-end install/start/stop on a host requires hero_proc running and `lhumina_code/hero_shrimp` reachable; left for operator validation.
feat(services): add service_shrimp.nu lifecycle module
All checks were successful
Build and Publish Skills / build-and-publish (pull_request) Successful in 3s
1394a270c6
Adds install | start [--reset] | stop | status for the hero_shrimp stack,
following the canonical Rust-multi-binary selfstart pattern. Single-instance,
user-level — no --root or --instance plumbing. Forwards LLM provider keys
(OPENROUTER/OPENAI/ANTHROPIC/GROQ/SAMBANOVA_API_KEYS) plus SHRIMP_HOME and
SHRIMP_DATA_DIR from the invoking shell into the server action env.

#155
Merge branch 'development' into development_service_shrimp_lifecycle
All checks were successful
Build and Publish Skills / build-and-publish (pull_request) Successful in 4s
d6a7f19b45
mahmoud merged commit 77f28c1bc2 into development 2026-04-29 13:16:07 +00:00
mahmoud deleted branch development_service_shrimp_lifecycle 2026-04-29 13:16:11 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
lhumina_code/hero_skills!170
No description provided.