Skip to content
Back to skills

Fh

ASecurity

Renders the FH hub map on demand — the door menu, a starter set of skills, and the most-used trigger phrases — without requiring a greeting. State-aware; composes live candidates from the session card and tracks.

  • 16 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 19, 2026
ai-agentsgobash

Security analysis

A100/100

Scanned September 19, 2026

npx -y skills add chrono-meta/forge-harness --skill fh --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Fh?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Fh
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/chrono-meta-forge-harness/badge)](https://www.skillsdirectory.com/skills/chrono-meta-forge-harness)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: fh
description: Renders the FH hub map on demand — the door menu, a starter set of skills, and the most-used trigger phrases — without requiring a greeting. State-aware; composes live candidates from the session card and tracks.
user-invocable: true
allowed-tools: ["Read", "Grep", "Glob"]
# /fh is read-only by construction: it detects state and renders a map. It was the only one of
# the 40 SKILL.md files with no allowed-tools declaration at all. Read/Grep/Glob is the full set
# its body needs — no Bash, Write, Edit, or Agent appears anywhere in it.
---

# /fh — hub map on demand

The greeting flow (CLAUDE.md §Active Onboarding) fires on greetings, start intents, new-task and
discovery utterances — but it is salience-dependent, once-per-session, and skipped entirely when the
user opens with a task. This command is the **explicit, deterministic** route to the same map: slash
autocomplete discoverability, invocable mid-session any number of times, no reliance on the model
catching a phrase. Same map, different guarantee — /fh does not claim a gap in *which utterances*
fire onboarding; it closes the *how-reliably-and-when* gap.

## Execution Steps

### Step 1. State detection (reuse, don't re-derive)

Run the same mechanical branch test as §Active Onboarding: session files / mapped project tracks
under `tracks/` (underscore dirs don't count) → new / returning; FH-dev state (session card ·
open `fh_signal_*` · `CLAUDE.local.md`) → operator. Do not invent a separate test — the canonical
branch rules live in CLAUDE.md §Active Onboarding and `fh_detail_protocols.md` Step 2.

### Step 2. Render the door menu

Output the door skeleton for the detected branch **verbatim from the canonical source** (CLAUDE.md
§Active Onboarding — including the 🐿️ same-line welcome). Compose door ③ / 🔧 candidates live from
the session card and CATALOG, exactly as the greeting path would.

### Step 3. Render the quick map (below the menu)

- **Starter set**: the curated first-five from `templates/starter_profile.md` (read it — do not
  hardcode a list that can go stale), one line each.
- **Most-used phrases**: 5-8 rows from CHEATSHEET §4 (universal phrases + the full-autonomy
  contract line).
- If cwd is a mapped field project: one line noting "진단해줘" routes to the Field-Harness
  Diagnostic here.

### Step 4. Hand off

End with "pick a door, say a phrase, or just state your task". Do not auto-run anything — this
command is a map, not a dispatcher.


## Step 3.5 — 가이드 · Q&A (📖 문을 골랐을 때만 진입)

🟥 **Q&A 는 net-new 기능이 아니다.** FH 에 대해 묻고 답하는 것은 이미 된다(CLAUDE.md 가 상주라
세션이 문·게이트·스킬을 안다). 이 절이 더하는 것은 **하나뿐**이다 — 「무엇을 근거로 답하나,
그리고 없으면 없다고 말한다」는 **계약**. 그래서 새 스킬을 만들지 않고 여기 붙인다.

**ⓐ 가이드** — `docs/USER_GUIDE.md` 의 **경로와 3줄 목차**를 출력한다. 승인하면 플랫폼 opener 를
제안한다(`uname -s`: Darwin→`open` · Linux→`xdg-open` · MINGW/MSYS→`start`). opener 가 없으면
조용히 건너뛴다 — 경로는 이미 나갔으므로 손실이 없다.
🟥 **전문 인라인 출력 금지.** 자동 실행도 안 한다.

**ⓑ Q&A** — 1문 1답. 근거는 아래 코퍼스 **안에서만** 찾는다:

```
1 docs/USER_GUIDE.md              사용법 · FAQ
2 CHEATSHEET.md                   명령 · 트리거 문구
3 knowledge/shared/GLOSSARY.md    용어
4 README.md §Get started/§Learn more   설치 · 진입 경로
5 CATALOG.md                      「예전에 뭐 했지」
6 설치된 SKILL.md frontmatter     「무슨 스킬 있어」
```

**degrade — 코퍼스에 없으면**
🟥 **지어내지 않는다.** 「못 찾음 — 코퍼스 N개를 봤고 여기엔 없다」 + **다음 한 걸음**(어느 파일을
열지 · `/install-doctor` 같은 실제 진단 경로)을 준다. 「아마 이럴 것이다」 형태의 답은 **금지**다.
이건 §Instrument Calibration 의 «미측정을 0으로 렌더하지 않는다» 와 같은 규율이다.
답마다 `file:line` 을 단다 — 근거 없는 문장은 팬텀이다.

⚠️ 코퍼스 밖 질문(도메인 작업 · 코드)은 이 절이 아니라 평소대로 처리한다. Q&A 는 **FH 사용법**용이다.

## Done When

| Condition | Check class |
|---|---|
| Door menu rendered for the correct state branch (new/returning/operator) | mandatory-pass (output exists; branch test is the mechanical §Active Onboarding rule) |
| Menu text matches the canonical skeleton (no drifted fork of the door labels) | measured — at render time, diff the rendered labels against CLAUDE.md §Active Onboarding (the render-vs-source diff IS the check; the canonical-side 4-axis guard only protects the source, not this skill's rendering) |
| Starter set and phrases sourced from their canonical files, not hardcoded | judged — paired with `/phantom-quench` back-trace (each rendered item must exist in its source file) |

## Trigger Phrases

- `/fh` (primary — explicit slash command)
- "show me the menu" · "메뉴 보여줘"
- "what can this hub do" · "여기서 뭘 할 수 있어"
- "지도 보여줘" · "skill map"

Natural-language triggers deliberately overlap the §Active Onboarding discovery triggers — both
routes render the same map from the same canonical source, so whichever route catches first, the
outcome is identical (collision-safe by construction, not by luck). Baseline Step 0.5 trigger-probe:
due at the next harness-doctor run (this skill is a routing surface — obligation per CLAUDE.md
§New Skill Creation Pre-Commit Gate).

## Constraints

- Never duplicates the menu skeleton into this file — CLAUDE.md is the single source; this skill
  only *renders* it. (The 2026-07-17 audit found label-drift risk across duplicated menu copies;
  this skill must not add a third copy.)
- Read-only: no state writes, no dispatch.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.