本文へ移動
cccskills
無料GitHub で公開

rootnode-profile-builder

Conversational profile builder. Produces validated JSON config files for any rootnode Skill that consumes profile-shaped configuration (handoff trigger check, mode router, critic gate, future Skills). Reads a target JSON Schema (draft-07), conducts a progressive-depth interview using plain-language questions, validates answers, and writes the resulting JSON to a destination path. Schema-agnostic — works with any profile schema conforming to draft-07. Use when a user needs to create, clone, or revise a profile and you do not want them hand-editing JSON. Trigger on: "build me a profile," "create a profile," "I need a profile for X," "set up my profile," "edit my profile," "clone the X profile," "walk me through making a profile." Do NOT use when the user already has a working profile and only wants to invoke the consuming Skill, when the schema cannot be located, or for non-profile JSON config work. Always validate before writing.

インストール方法を見る

含まれるファイル(5)

  • SKILL.md11.5 KB
  • examples/sample-interview-flow.md7.8 KB
  • references/common-schema-shapes.md8.3 KB
  • references/schema-walking-patterns.md13.0 KB
  • references/troubleshooting.md10.9 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

Profile Builder

Calibration: Tier 1 (Model-compatible) - runs cleanly on the current dual-primary tier (Opus 5, Sonnet 5) as well as Haiku 4.5 with extended thinking. Structured retrieval, rule evaluation, or template lookup - output shape does not depend on model class. Correct-shape output also on Opus 4.8 (fallback-graceful) and Sonnet 4.6 (legacy-graceful). See repository README for model compatibility.

Conversational interview that produces validated JSON profile files for any rootnode Skill. Solves the "users won't hand-edit JSON" problem by walking them through one plain-language question at a time, then writing a validated file.

The Skill is schema-agnostic by design. It does not encode knowledge of any specific profile schema. It reads the target schema, parses required fields and constraints, generates the interview from the schema, validates answers against the schema, and writes the result. This is what makes the Skill portable across the entire rootnode runtime layer — every Skill that takes profile config uses the same builder, no per-Skill builder forks.

Important

Progressive depth, not interrogation. Walk the user through 5-7 substantive questions that determine the profile's shape. Set sensible defaults for everything else. Offer "review and customize defaults" only at the end for users who want it. Never ask 30 questions in sequence — produces bad answers and exhausts users.

Plain language, never machine names. Translate every enum option into a meaningful description. "Choose threshold_rule: all_must_pass / min_count / weighted" is wrong. "How strict should this be? (a) Every condition must pass — strictest, for unattended runs. (b) Most conditions must pass — balanced. (c) Weight conditions by importance — advanced." is right.

Validate before writing. Run the schema validation against the assembled profile before any file is created. If validation fails, identify the failing constraint, ask the missing question, retry. Never write an invalid file.

Show summary, not JSON, before saving. Final confirmation step shows a human-readable summary of choices made. The JSON is an implementation detail — the user shouldn't have to read it to verify the profile.

One file per profile. No bundling. No multi-profile artifacts. Each profile is a discrete file the user can move, clone, edit, or share.


Workflow

Step 1 — Locate inputs

Required:

  • Target schema — JSON Schema draft-07 file describing the profile shape. Caller provides path or content. If the user names a Skill ("build me a handoff profile"), look for the schema in that Skill's installed schema/ directory.
  • Output destination — filesystem path where the profile JSON will be written. Defaults to ~/.rootnode/profiles/{schema-name}/{profile-name}.json if not specified by the caller.

Optional:

  • Starter profile — existing profile to clone and modify. When provided, the interview becomes a delta walk ("here's what's set, what do you want to change?") rather than a full interview.
  • Profile name — pre-supplied name. If absent, ask first.

If schema is not provided or cannot be located, halt and ask the user. Do not attempt to write a profile against an unknown schema.

Step 2 — Parse the schema

Extract:

  • Required fields (drives mandatory questions)
  • Field types and constraints (drives input validation per question)
  • Enum values for constrained fields (drives multiple-choice questions)
  • Conditional dependencies (e.g., if threshold_rule = weighted, then condition_weights required) — drives follow-up question logic
  • Field descriptions (used as question prompts when no plain-language override is provided)

If the schema includes schema_version, use the current value when writing the profile.

For per-construct semantics (how each JSON Schema construct should drive interview behavior — required vs optional, enum walking, polymorphic types like oneOf/anyOf, arrays, conditional dependencies, nested objects), consult references/schema-walking-patterns.md. For a JSON Schema draft-07 quick reference (type constructs, validation constraints, composition, $ref resolution, annotations, and constructs the builder cannot handle), consult references/common-schema-shapes.md.

Step 3 — Plan the interview

Group questions by substantive impact:

Tier 1 — Identity & purpose (always asked):

  • Profile name (validate against schema's name pattern)
  • One-sentence description: "When does this profile apply?"

Tier 2 — Substantive shape (5-7 questions max):

  • One question per major branching decision in the schema
  • Use enums to drive multiple-choice
  • Translate enum values into plain-language descriptions of what they mean operationally

Tier 3 — Numeric tuning (defaults offered):

  • Bounded numeric fields (margins, thresholds, counts)
  • Present a sensible default with rationale, accept override
  • Format: "Suggested: X (because Y). Accept, or enter your own value:"

Tier 4 — Optional details (skipped unless requested):

  • Free-text fields (notes, descriptions beyond the one-sentence purpose)
  • Optional fields the schema doesn't require
  • Show: "Want to add notes / advanced settings? (y/n)"

Conditional follow-ups: When an answer triggers a dependent requirement (e.g., choosing weighted threshold requires per-condition weights), insert the dependent questions immediately after, in plain language.

Step 4 — Conduct the interview

Ask questions one at a time. Wait for the user's answer. Validate each answer against the schema constraint for that field. If invalid, explain why in plain language and re-ask. Do not bury validation errors in stack traces.

When the user gives a clearly informal answer (e.g., "yeah" to a numeric prompt), interpret charitably and confirm: "I'll take that as accepting the default of X — confirm?"

When the user is uncertain ("I don't know what to pick"), provide a recommendation with one-sentence rationale based on the schema's field description and the profile's stated purpose.

Step 5 — Show summary and confirm

Before writing, present a plain-text summary:

Profile summary: {name}

Purpose: {description}

Behavior:
- {plain-language summary of each substantive choice}

Numeric settings:
- {field}: {value} ({explanation if non-default})

Will be saved to: {destination path}

Confirm save? (y/n/edit)

If user chooses edit, return to the relevant question. If n, ask whether to abandon or save as draft. If y, proceed.

Step 6 — Validate and write

Final validation pass against the schema. If validation fails at this stage (should be rare given per-question validation), do not write — surface the specific failing constraint and the question that needs revision.

On successful validation, write the JSON file (pretty-printed, 2-space indent) to the destination path. Confirm to the user with the absolute path.

Optionally generate a companion {profile-name}.notes.md containing:

  • Date created, schema version
  • One-paragraph summary of the profile's intent
  • Key choices made and why (drawn from interview answers)
  • Suggested re-evaluation triggers (e.g., "Reconsider this profile if your daily token budget changes by more than 30%")

The notes file is for audit trail and for sharing patterns with other users. Skip if the user declines.


Examples

A complete sample interview flow showing the builder building a handoff-trigger-check profile from scratch, with full question-and-answer sequences, is in examples/sample-interview-flow.md. Three additional walkthrough patterns — building from scratch, cloning an existing profile (delta walk), and handling user uncertainty — are in references/schema-walking-patterns.md (in the "Worked Walkthrough Examples" section). Consult either file when modeling a new Skill's profile schema against a tested interview pattern.


When to Use This Skill

Use this Skill when:

  • A user needs to create a new profile config for any rootnode Skill that consumes profile-shaped configuration
  • A user wants to clone and modify an existing profile
  • A user needs to revise a profile after a schema update or changed circumstances
  • A user is being onboarded to a rootnode Skill that requires a profile and doesn't have one yet

Do NOT use this Skill when:

  • The user already has a working profile and only wants to invoke the consuming Skill (call the consuming Skill directly)
  • No target schema has been provided or can be located (halt and request)
  • The user is editing arbitrary JSON config that isn't profile-shaped (different problem; use a JSON editor)
  • The user explicitly wants to hand-edit JSON (respect that; provide schema reference and exit)

Troubleshooting

Common failure modes and resolution guidance — covering schema and input issues (schema not found, non-draft-07 schemas, unrecognized fields, custom keywords), interview behavior issues (skipping questions, advanced control, confusing prompts, conditional follow-ups not firing), validation issues (final-pass validation failures, user disagrees with constraint, consuming Skill rejects builder output), output issues (path not writable, cancel-at-summary draft handling, overwrite handling), and user experience issues (uncertainty handling, informal answers, interview fatigue, hand-edit pivot) — are in references/troubleshooting.md. Consult that file when the interview is producing unexpected behavior or the resulting profile doesn't match what the user intended.

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

Detects seven structural anti-patterns in Claude Projects that cause unpredictable output, ignored instructions, and degraded quality. Diagnoses Monolith, Orphan File, Echo Chamber, Phantom Conversation, Kitchen Sink, Misaligned Hierarchy, and Blurred Layers. Use when user says "what's wrong with my project," "Claude ignores my instructions," "diagnose my project," "why is output inconsistent," "review my project setup." Also trigger on symptom-phrased: "Claude doesn't follow my rules," "my instructions keep getting overridden," "my Project isn't behaving as designed." Use alongside rootnode-project-audit if available for deeper structural analysis. Activate whenever the user describes symptoms of unreliable, inconsistent, or degraded Claude Project output, even if they do not name a specific pattern. Do NOT use when the user's primary request is Memory-layer rebalancing (use rootnode-memory-optimization if available) or scoring a single prompt (use rootnode-prompt-validation if available).

日本語の概要は準備中です。原文の説明を表示しています。

drayline/rootnode-skills402026年9月14日 更新

Diagnoses and fixes Claude behavioral issues in system prompts and Projects using tested countermeasure templates. Use when "Claude is too verbose," "keeps hedging," "agrees with everything," "claims it did something it didn't," "won't use a tool," "fix Claude's output," "tune Claude's behavior," "Claude ignores my preferences," "adds unsolicited disclaimers," "uses too many lists." Covers ten tendencies: agreeableness (output-content + persistent-preference), hedging, verbosity, list overuse, fabricated precision, over-exploration, tool miscalibration (over- and under-triggering), LaTeX defaulting, editorial drift, self-referential fabrication. Also use when auditing a system prompt for behavioral calibration or recalibrating a pre-4.7 prompt, and when users describe recurring output problems without naming a tendency. Do NOT use for scoring a prompt's overall quality — use rootnode-prompt-validation if available.

日本語の概要は準備中です。原文の説明を表示しています。

drayline/rootnode-skills402026年9月14日 更新

Guides selection of identity, reasoning, and output approaches for Claude prompts based on task characteristics. Trigger on: "help me choose an approach," "which approach fits this task," "recommend a prompt pattern," "compare reasoning methods," "map this task to the right approach," "what combination of approaches," "which identity fits," "which reasoning method." Also trigger on symptom-phrased: "my prompt feels generic," "I don't know which approach to use," "my output lacks domain depth." Covers decision-tree logic across 8 identity approaches, 18 reasoning variants, and 10 output formats. After selection, use the relevant catalog skill if available to retrieve full templates. Activate whenever approach-selection across multiple categories is the primary decision. Do NOT use when the user already names a specific approach to retrieve (use the relevant catalog skill directly if available) or for evaluating existing prompts (use rootnode-prompt-validation if available).

日本語の概要は準備中です。原文の説明を表示しています。

drayline/rootnode-skills402026年9月14日 更新

Designs Claude Code prompts and CC environments. Produces CLAUDE.md drafts, agent topologies, scope-authorization frameworks, halt triggers, Skills/hooks/MCP plans, chat-to-CC handoff specs, and EXECUTION_PLAN.md remediation plans. Five modes: DESIGN (new CC deployments), EVOLVE (updates from friction), RESEARCH (evaluate a CC tool/pattern), TEMPLATE (reusable artifacts), REMEDIATE (consume hygiene findings → produce + execute plan). Do NOT use REMEDIATE for direct cleanup (Cat 1–10 — use rootnode-repo-hygiene Phase 2). Do NOT use for hygiene scanning (rootnode-repo-hygiene), chat prompts (rootnode-prompt-validation), or chat Projects (rootnode-project-audit).

日本語の概要は準備中です。原文の説明を表示しています。

drayline/rootnode-skills402026年9月14日 更新

Analyzes Claude Project context budget under the automatic-RAG-by-window model: knowledge files vs. threshold-exempt overhead (Skills, MCPs, CI, Memory). Two modes: Quick Diagnostic and Full Budget Audit. Use when user says "check my context budget," "how much context am I using," "is my project too big," "optimize my token usage," "tier my files," "optimize for RAG," "improve retrieval quality," "should I keep compressing," "am I over-compressing," "should I accept RAG mode." Also trigger on context pressure symptoms: "Claude forgets my instructions," "responses getting generic," "content not found in my knowledge files." Also use when a project audit scores Knowledge Architecture ≤ 3. Do NOT use for content placement decisions (use rootnode-memory-optimization if available), full project audits (use rootnode-project-audit if available), or behavioral tuning (use rootnode-behavioral-tuning if available). Run on Opus 5 or Sonnet 5 at `high` effort (both defaults); depth reduces on legacy models.

日本語の概要は準備中です。原文の説明を表示しています。

drayline/rootnode-skills402026年9月14日 更新

Independent re-derivation gate for proposed changes during autonomous execution. Evaluates a change (code diff, config edit, engine evolution, schema change) against the work's authority matrix and a 4-check protocol: invariant compliance, scope authorization, detection narrowness, and regression risk. Returns structured JSON with pass/fail per check, an overall verdict (APPROVE / REQUEST_CHANGES / REJECT), and blockers. Profile-driven thresholds (strict for unattended runs, lenient for desk supervision). Use when an autonomous agent proposes an engine change, when reviewing a Claude Code-authored modification before merge, or when an unattended profile requires independent re-derivation. Trigger on: "review/approve this proposed change," "critic-gate this," "is this change safe," "is this safe to merge," "should I let this land," "run the critic." Do NOT use for handoff-readiness checks (use rootnode-handoff-trigger-check), general code review, or design-time correctness. Authority matrix required.

日本語の概要は準備中です。原文の説明を表示しています。

drayline/rootnode-skills402026年9月14日 更新

drayline のスキルをすべて見る

このスキルの問題を報告する