Register the Hi agent on this OpenClaw host AFTER the `clawhub:hirey` ClawPack plugin has been installed. Use whenever `hi_agent_install` is in your tool inv...
---
name: hi-register
description: Register the Hi agent on this OpenClaw host AFTER the `clawhub:hirey` ClawPack plugin has been installed. Use whenever `hi_agent_install` is in your tool inventory but no Hi state exists yet (for example, the user just installed the plugin in the previous turn and is now sending the second message of the install flow), or whenever the user asks to "set up", "register", "complete the install of", "activate", or "connect" Hi. CRITICAL — `hi_agent_install` is the AGENT-side registration tool on the Hi platform; it is structurally different from `openclaw plugins install`, which is a system-side CLI that just lays the plugin on disk. Never confuse the two. Never report a fabricated `agent_id`.
---
# Hi Register (post-install)
This skill is the **second turn** of the Hi install flow on OpenClaw 5.2+ ClawPack. It loads automatically when the `clawhub:hirey` plugin is installed and the next outer LLM run starts.
## Use when
- the `clawhub:hirey` plugin is installed locally and `hi_agent_install` is in your current run's tool inventory
- the user is sending a fresh message after the plugin install ran in a previous turn (typical: the user said `continue` or anything else after being told "send another message to finish setup")
- OR: the user explicitly asks to register / set up / activate / connect Hi
- OR: a Hi tool returned an error like `hi_agent_state_missing` / `agent_not_registered`
## Do not use when
- the plugin is not installed yet (run `clawhub:hirey` install via the `openclaw-hi-install` skill first)
- the agent is already registered and `hi_agent_status` reports active
## Steps (turn 2 — registration)
1. Verify `hi_*` tools are in your current outer run's tool inventory before you call anything (try a lightweight call like `hi_agent_status`). If they are not, you are still in the same outer run as `openclaw plugins install` — your tool inventory was frozen before the plugin loaded; STOP and tell the user "send another message — OpenClaw doesn't refresh my tool list mid-turn." Do **not** fabricate `agent_id`.
2. Read the canonical full session key for the current chat from a structured host source: `openclaw status --json` → `sessions.recent[0].key`. Do not copy from human-readable status text (it can be truncated).
3. Call `hi_agent_install` with at minimum:
- `host_session_key`: the session key from step 2
- `default_reply_channel: "last"`
- and if your structured host source provides them: `default_reply_to`, `default_reply_account_id`, `default_reply_thread_id`
- `route_missing_policy: "use_explicit_default_route"` so Hi binds the current chat as the default reply target
4. Report the **real** values returned by the tool: `agent_id`, `hooks_ready`, `connected`, `activated`, `push_ready`. Never edit them. Never make them up.
5. Run `hi_agent_doctor` (with `probe_delivery: true` if you want a full end-to-end check) to verify; if it reports blockers, surface them honestly to the user.
6. If `hi_agent_install` returned a `welcome` field (shape: `{kind:"install_welcome_onboarding", instruction_to_llm, recent_activity, intent_options}`), follow `welcome.instruction_to_llm` exactly — it is the platform-authored onboarding script and supersedes any per-skill rephrasing. Use the `recent_activity` and `intent_options` that came back in `welcome` directly; do not call `agent_listings(action="browse_recent")` again to re-fetch them. Run the welcome conversation in the user's chat language.
## Anti-patterns
- ❌ Reporting `agent_id` you did not get back from `hi_agent_install`. `agent_id` looks like `ag_<12-hex>`; if you have not actually run the tool, the only correct answer is "I cannot register yet — please send another message."
- ❌ Pretending `hooks_ready=true` / `connected=true` / `activated=true` to make the install look one-shot. The user discovers the lie the first time they call any Hi tool.
- ❌ Calling `openclaw plugins install …` from this turn to "redo the install" — the plugin is already installed; you just need to call `hi_agent_install` (the AGENT-side registration tool, not the system-side CLI).
- ❌ Skipping the `welcome` onboarding when `hi_agent_install` returns one. Doctor being healthy is necessary but not sufficient — install is only "done for the user" after the welcome conversation has actually surfaced what Hi is and what they want it to find for them.
## Naming clarification (critical to avoid confusion)
There are two install-shaped commands in scope, and they are **not** the same thing:
| | `openclaw plugins install clawhub:hirey` | `hi_agent_install` (this tool) |
|---|---|---|
| Where it runs | OpenClaw CLI (system) | Hi platform (agent runtime) |
| What it does | Lands the plugin tarball on disk + registers it with the gateway | Registers an AGENT identity for this OpenClaw host on the Hi platform; sets up hooks for push delivery; activates installation; subscribes to event topics |
| When | Stage A (turn 1) | Stage B (turn 2) |
| Required tool inventory | available in any LLM run | only in LLM runs whose inventory was materialized AFTER the plugin loaded |
| Sufficient to use Hi? | NO — you have tools but no agent identity | YES — after this returns successfully, hi_* tools work |
If only the system-side install ran, the user has a non-functional plugin: the tools surface but every call fails because there is no agent identity bound to this host. `hi_agent_install` is the step that makes Hi actually work.
don't have the plugin yet? install it then click "run inline in claude" again.
restructured raw skill into implexa format with explicit decision points for inventory checks and tool failures, added inputs section documenting host access and tool requirements, reworded procedure steps with clear input/output for each, and added comprehensive decision tree covering missing tools, welcome onboarding flow, and error cases the original implied but did not state.
---
name: hi-register
description: register the hi agent on this openclaw host after the clawhub:hirey clawpack plugin is installed
---
## intent
register the hi agent identity on your openclaw host after the `clawhub:hirey` plugin has been installed via system-side CLI. run this skill on the second turn of the hi install flow, when the user sends a fresh message after plugin install completed, or when they explicitly ask to register / set up / activate / connect hi. this skill bridges from system-level plugin installation (which lands the tarball on disk) to agent-level registration (which creates the agent identity and wires up delivery hooks).
## inputs
- **openclaw host access**: must be able to run `openclaw status --json` to fetch the canonical session key for the current chat
- **hi_agent_install tool**: must be present in your current outer run's tool inventory (only available in LLM runs materialized after the plugin loaded)
- **hi_agent_status tool**: optional, use for lightweight verification that hi tools are in inventory
- **hi_agent_doctor tool**: optional but recommended for post-install validation
- **structured host source**: `openclaw status --json` output that contains `sessions.recent[0].key` (the canonical full session key, not human-readable truncated text)
- **user chat language**: onboarding script from `welcome` field (if returned) must run in this language
- **optional metadata from host source**: `default_reply_to`, `default_reply_account_id`, `default_reply_thread_id` (pass to `hi_agent_install` if available)
## procedure
1. **verify tool inventory is live**: call `hi_agent_status` or attempt any lightweight hi_* tool call to confirm `hi_agent_install` is in your current outer run's tool inventory. if these tools do not appear, you are still in the same outer run as `openclaw plugins install` and your tool inventory was frozen before the plugin loaded. stop here and tell the user "send another message, openclaw doesn't refresh my tool list mid-turn." never fabricate or guess an `agent_id`.
2. **fetch canonical session key**: run `openclaw status --json` and extract `sessions.recent[0].key` from the structured output. do not copy the session key from human-readable status text, as it may be truncated or malformed.
3. **call hi_agent_install**: invoke `hi_agent_install` with the following required and optional parameters:
- **required**: `host_session_key` (from step 2), `default_reply_channel: "last"`, `route_missing_policy: "use_explicit_default_route"` (so hi binds the current chat as the default reply target)
- **optional** (if your host source provides them): `default_reply_to`, `default_reply_account_id`, `default_reply_thread_id`
- wait for the full response, including any `welcome` field
4. **surface returned values verbatim**: report the exact values that `hi_agent_install` returned: `agent_id`, `hooks_ready`, `connected`, `activated`, `push_ready`. do not edit, round, or fabricate any of these. if `agent_id` was not returned by the tool, never claim the agent was registered.
5. **run post-install doctor** (optional but recommended): call `hi_agent_doctor` (with `probe_delivery: true` for end-to-end validation if you want deep verification) to check for blockers. surface any blockers honestly to the user.
6. **run welcome onboarding if present**: if `hi_agent_install` returned a `welcome` field (shape: `{kind:"install_welcome_onboarding", instruction_to_llm, recent_activity, intent_options}`), follow the exact steps in `welcome.instruction_to_llm`. this is the platform-authored onboarding script and takes precedence over any skill-level rephrasing. use `recent_activity` and `intent_options` from the welcome response directly; do not call `agent_listings(action="browse_recent")` again. run the welcome conversation in the user's chat language.
## decision points
**if hi_* tools are not in tool inventory**: you are still in the same outer run as `openclaw plugins install`. the tool inventory was frozen before the plugin loaded. do not try to call `hi_agent_install` yet. tell the user to send another message so openclaw can refresh the tool list. do not fabricate an `agent_id`.
**if hi_agent_install fails with `host_session_key` mismatch or missing**: verify you extracted the session key from `openclaw status --json` and not from human-readable output. re-fetch the key and retry.
**if hi_agent_install returns `hooks_ready=false` or `activated=false`**: the registration succeeded but delivery is not fully wired. surface this to the user honestly. run `hi_agent_doctor` to diagnose the blocker.
**if hi_agent_install returns a `welcome` field**: you must run the onboarding conversation (step 6). registration is incomplete for the user experience until they understand what hi does and what they want it to find. do not skip this or claim the install is done.
**if hi_agent_install returns no `welcome` field but `agent_id` is present and valid**: registration succeeded and onboarding is not required. confirm successful registration and offer next steps.
**if the plugin was never installed via system-side CLI**: do not use this skill. use the `openclaw-hi-install` skill first (or equivalent system-side plugin install). if you call `hi_agent_install` without the plugin landed on disk, it will fail.
**if the agent is already registered and hi_agent_status reports active**: do not run this skill. the registration is complete. offer to help with hi functionality instead.
## output contract
on success, `hi_agent_install` returns a json object containing:
- `agent_id`: string, format `ag_<12-hex>` (the canonical agent identity on the hi platform)
- `hooks_ready`: boolean (delivery hooks are wired)
- `connected`: boolean (hi platform connection is active)
- `activated`: boolean (agent has been activated in hi's system)
- `push_ready`: boolean (push delivery is ready)
- `welcome` (optional): object with `kind`, `instruction_to_llm`, `recent_activity`, `intent_options` (onboarding script from the platform)
report these values exactly as returned. if a field is absent or false, report that. never edit for appearance.
optional: if you run `hi_agent_doctor`, expect a report on health status and any blockers (e.g., missing event topic subscriptions, unreachable delivery endpoints, network timeouts).
files generated on the host: none by this skill (all state lives on the hi platform and in the openclaw session).
## outcome signal
the user knows this skill worked when:
- `hi_agent_install` returned an `agent_id` in format `ag_<12-hex>` and you reported it back
- `hooks_ready`, `connected`, and `activated` are all `true`
- `hi_agent_doctor` runs cleanly with no blockers
- if a `welcome` field was returned, the user has seen and engaged with the onboarding conversation (they understand what hi does and have been presented with intent options)
- the user can now call hi_* tools in subsequent turns without `agent_not_registered` errors
if any of these is missing or false, the registration is incomplete and the user should be told what is blocking it.
---
original author: clawhub