Split /onboard back out as its own command (21 commands total)

Pre-3.0, onboard was folded into /harden when we were trying to reduce
namespace pollution. In the single-skill model that tradeoff is gone,
so the weakest of the old merges is the first to undo.

Harden and onboard live in different mental modes. Harden is defensive
(edge cases, i18n, overflow, errors). Onboard is activation (first-run
flows, empty states as CTAs, progressive disclosure). A user thinking
"design the onboarding flow" was never going to type /impeccable harden.

Changes:
- New reference file at source/skills/impeccable/reference/onboard.md,
  restored from the pre-merge version in git history rather than the
  condensed 33-line summary that was in harden.md.
- Removed the "Onboarding & First-Run Experience" section from
  source/skills/impeccable/reference/harden.md.
- Updated harden description/editorial/process-steps to drop onboarding
  keywords; split commandProcessSteps so harden stays focused on
  production resilience and onboard gets its own phases.
- Registered onboard in: SKILL.md description + command menu + router
  table, command-metadata.json, IMPECCABLE_SUB_COMMANDS, pin.mjs
  VALID_COMMANDS, SKILL_CATEGORIES, COMMAND_RELATIONSHIPS, data.js
  commandCategories + commandProcessSteps + commandRelationships,
  framework-viz commandSymbols + commandNumbers.
- Reused the existing content/site/skills/onboard.md editorial wrapper
  (it was orphaned by the merge but never deleted), updating it to use
  /impeccable onboard.
- Bumped all user-facing count references 20 -> 21: public/index.html,
  CLAUDE.md, README.md, NOTICE.md, plugin.json, marketplace.json,
  sitemap.xml, build-sub-pages.js.
- Harness dir audit.md and critique.md changes are the
  {{available_commands}} placeholder expanding to include onboard.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Paul Bakaus
2026-04-11 19:21:45 -07:00
co-authored by Claude Opus 4.6
parent 2c10cfb664
commit e58cbc432f
97 changed files with 3023 additions and 545 deletions
+1 -1
View File
@@ -695,7 +695,7 @@ export async function generateSubPages(rootDir) {
const html = renderPage({
title: 'Docs | Impeccable',
description:
'20 commands that teach your AI harness how to design. Browse by category: create, evaluate, refine, simplify, harden.',
'21 commands that teach your AI harness how to design. Browse by category: create, evaluate, refine, simplify, harden.',
bodyHtml: wrapInDocsLayout(sidebar, main),
activeNav: 'docs',
canonicalPath: '/docs',
+2 -1
View File
@@ -36,7 +36,6 @@ const EXCLUDED_SKILLS = new Set([
'teach-impeccable', // deprecated, folded into /impeccable teach
'arrange', // renamed to layout
'normalize', // merged into /polish
'onboard', // merged into /harden
]);
/**
@@ -69,6 +68,7 @@ const SKILL_CATEGORIES = {
polish: 'harden',
optimize: 'harden',
harden: 'harden',
onboard: 'harden',
// SYSTEM - setup and tooling
teach: 'system',
extract: 'system',
@@ -126,6 +126,7 @@ export const COMMAND_RELATIONSHIPS = {
polish: {},
optimize: {},
harden: { combinesWith: ['optimize'] },
onboard: { combinesWith: ['clarify', 'delight'] },
// System
teach: {},
extract: {},
+2 -2
View File
@@ -394,8 +394,8 @@ const EXCLUDED_FROM_SUGGESTIONS = new Set([
// These are the commands that audit/critique/etc. reference when suggesting next steps.
const IMPECCABLE_SUB_COMMANDS = [
'adapt', 'animate', 'audit', 'bolder', 'clarify', 'colorize',
'critique', 'delight', 'distill', 'harden', 'layout', 'optimize',
'overdrive', 'polish', 'quieter', 'shape', 'typeset',
'critique', 'delight', 'distill', 'harden', 'layout', 'onboard',
'optimize', 'overdrive', 'polish', 'quieter', 'shape', 'typeset',
];
export function replacePlaceholders(content, provider, commandNames = [], allSkillNames = []) {