Myclaude-creator-engine onboard
git clone https://github.com/myclaude-sh/myclaude-creator-engine
T=$(mktemp -d) && git clone --depth=1 https://github.com/myclaude-sh/myclaude-creator-engine "$T" && mkdir -p ~/.claude/skills && cp -r "$T/.claude/skills/onboard" ~/.claude/skills/myclaude-sh-myclaude-creator-engine-onboard && rm -rf "$T"
.claude/skills/onboard/SKILL.mdOnboarder
Discover and persist creator profile through intelligent scanning + minimal questions. Build
creator.yaml — the Master Input that defines the quality ceiling for every product this creator builds.
When to use: First time using the Creator Engine, or when profile needs update (
/onboard update).
Full protocol (phases, question scripts, schema, edge cases): Read
${CLAUDE_SKILL_DIR}/references/onboard-protocol.md before executing any phase.
Core Principle: Minimum Friction
RULE: Every question to the creator MUST use the
AskUserQuestion tool. Never ask questions via plain text.
RULE: Scan first, ask second. Auto-detect everything possible. Only ask what cannot be inferred.
RULE: Optimize for the happy path. If the scan is rich enough, the entire onboarding should be 1 click.
Activation Protocol
- Shared preamble: Load
— context assembly, persona adaptation, deterministic routing rules.references/quality/activation-preamble.md - Check for
in project rootcreator.yaml - Exists → read
:schema_version
→ run Phase 2.5d Schema v2→v3 Silent Migration (protocol → Phase 2.5d) BEFORE any other action. Migration is atomic + reversible viaschema_version < 3
. After migration succeeds, continue with step 2 against the new v3 file.creator.yaml.bak.v2
→ load it, display summary, AskUserQuestion: "Is this still accurate?"schema_version == 3- Yes → exit, profile is current
- No → enter UPDATE MODE (see protocol file → Update Mode Flow)
- Does not exist → enter FULL ONBOARDING (Phases 0 → 6c). Run Phase 2.5b (Intent Profile Inference) + 2.5c (Language Confirmation Gate) between Phase 2.5 and Phase 3 — both are mandatory for schema v3.
Full Onboarding — Phase Routing Table
Load
${CLAUDE_SKILL_DIR}/references/onboard-protocol.md for full details on every phase.
| Phase | What Happens | Detail Location |
|---|---|---|
| 0 — Platform Detection | Detect OS + shell + resolve path | protocol → Platform Detection |
| 1 — Silent Deep Scan | Run 5 scans in parallel: git identity, .claude/ root, project breadth, workspace, locale | protocol → Phase 1 |
| 2 — Inference Engine | Build draft profile: name, language, technical_level, profile.type, expertise. Weighted scoring (skills 3x, CLAUDE.md 3x, projects 2x, MCP 1x, rules 1x). Route to Express/Standard/Full path | protocol → Phase 2 |
| 2.5 — Disambiguation | If expert score (≥19) on Express/Standard path → one question: first time user? | protocol → Phase 2.5 |
| 2.5b — Intent Profile Inference | Derive 5 of 7 fields from scan outputs (domain_depth, working_rhythm, maintenance_appetite, target_audience, external_dependency_tolerance). Mark . Defer to . is asked in Phase 3 Call 2. Mandatory for schema v3. | protocol → Phase 2.5b |
| 2.5c — Language Confirmation Gate | Classify language detection as . Silent announcement if high; one-question confirm if low; forced question if fallback. Persist + . Mandatory for schema v3. | protocol → Phase 2.5c |
| 2.5d — Schema v2→v3 Migration | Triggered only when an existing has . Atomic + backed up to . Preserves all v2 fields. | protocol → Phase 2.5d |
| 3 — Adaptive Questioning | Express (2 calls) / Standard (2 calls) / Full (3 calls). Call 2 of all three paths now includes a 4th question on (schema v3). | protocol → Phase 3 |
| 4 — Profile Type | Infer type from all signals. Never ask directly | protocol → Phase 4 |
| 5 — Generate creator.yaml | Write schema v3 file (includes , , ). Validate YAML. Read back to verify. | protocol → Phase 5 |
| 5b — Seed creator-memory.yaml | After creator.yaml is written and parses, seed the sibling with a event. Idempotent: silently skipped if a event already exists. Validator: . Silent infrastructure — Phase 6 speaks, 5b prepares the ground. | protocol → Phase 5b |
| 6 — Closing + Intelligence Report | Persona-adaptive next step + setup health + gap analysis + product recommendation. Load UX stack: (loaded at activation start), (§2.3 first scaffold moment = "first onboard" for brand), (full Brand DNA substrate loaded here because this is a peak moment: the FIRST myClaude Studio impression). Use brand frame: . Personalize with the name just captured. This is the moment the creator enters the myClaude universe — make it feel like arriving, not registering. After Phase 5 writes creator.yaml, Phase 5b appends the event to (create-if-absent with full schema shell per ). This seeds the Ritual of Return Layer 2 for future sessions. | protocol → Phase 6, 6b, 6c |
Scan failure protocol: See protocol → Scan Failure Protocol. Never crash. Never show raw errors.
i18n: Detect language (CLAUDE.md → locale →
en). All AskUserQuestion text in detected language.
Commands
/onboard → Full onboard (FULL ONBOARDING if no creator.yaml) /onboard update → Refresh profile (UPDATE MODE if creator.yaml exists)
Quality Gate
Must pass before writing creator.yaml:
- Valid YAML,
schema_version: 3 - Required non-empty:
,name
,language
,language_confidence
,profile.type
,profile.technical_level
,preferences.default_license
,preferences.default_category
,preferences.quality_targetpreferences.workflow_style - Schema v3 intent_profile required non-null (except licensing_tolerance which is deferred):
,intent_profile.domain_depth
,intent_profile.working_rhythm
,intent_profile.usage_frequency_expectation
,intent_profile.maintenance_appetite
,intent_profile.target_audienceintent_profile.external_dependency_tolerance
block present with one entry per intent_profile fieldintent_profile._inferred
∈ {high, low, fallback, migrated}language_confidence
∈ {guided, autonomous}. Default:workflow_style
for beginner/intermediate,guided
for advanced/expertautonomous
∈ {eco, balanced, unlimited}. Default:token_efficiency
. Eco minimizes context reads; unlimited loads full UX stack every timebalanced
∈ {developer, prompt-engineer, domain-expert, marketer, operator, agency, hybrid}profile.type
∈ {beginner, intermediate, advanced, expert}technical_level
∈ CE-D40 list: MIT, Apache-2.0, GPL-3.0, BSD-3-Clause, ISC, CC-BY-4.0, CC-BY-SA-4.0, CC0-1.0, Proprietary, Customlicense
∈ {express, standard, full}scan_path
∈ {macOS, Linux, Windows, WSL, Docker, unknown}platform
consistent withtechnical_score
(score in threshold range)technical_level
set only if actually detected (not fabricated)git_handle
= today's date inonboarded_atYYYY-MM-DD
= valid IETF tag (e.g.,language
,pt-BR
,en
)es- No placeholder text (
,{name}
, etc.) in the final file{domain 1}
Post-write: Read creator.yaml back and verify YAML parsing succeeds. Guards against encoding issues.
Anti-Patterns
- Asking questions via plain text — Always use
AskUserQuestion - Hardcoding
— Always resolve~/
dynamically per platform{home} - Crashing on scan failure — Every scan failure must be caught silently; set to fallback value
- Mixing
+preview
in one call — Causes silent answer loss; never do thismultiSelect - Using a git handle as
without asking — Whencreator.name
, always offer name choicename_type = handle - Blocking onboarding on marketplace/CLI failures — Phase 6b/6c are non-blocking; skip silently on error
- Triggering AskUserQuestion in Phase 6b — Setup Intelligence Report is OUTPUT ONLY
- Ignoring CLI contract in Phase 6c — All 4 CLI commands (
,whoami
,profile sync
,stripe status
) followsetup-mcp
unified error handling. All are warning severity — no CLI failure prevents onboarding from completing. Phase 6c details are inreferences/cli-contract.md
.references/onboard-protocol.md → Phase 6c
Compact Instructions
When context is compressed, preserve:
- Which path was taken (express/standard/full) and current phase
andname_type
from Phase 1 scanname_confidence- Scan richness classification and which scans failed
inferred from Phase 2recommended_default- Any AskUserQuestion answers already collected (don't re-ask)
- Whether UPDATE MODE or FULL ONBOARDING was triggered