{
  "schemaVersion": "1.0",
  "item": {
    "slug": "skeall",
    "name": "Skeall Skill Builder",
    "source": "tencent",
    "type": "skill",
    "category": "AI 智能",
    "sourceUrl": "https://clawhub.ai/dorukardahan/skeall",
    "canonicalUrl": "https://clawhub.ai/dorukardahan/skeall",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/skeall",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=skeall",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "README.md",
      "SKILL.md",
      "references/advanced-patterns.md",
      "references/anti-patterns.md",
      "references/healthcheck.md",
      "references/scoring.md"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T16:55:25.780Z",
      "expiresAt": "2026-05-07T16:55:25.780Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
        "contentDisposition": "attachment; filename=\"network-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/skeall"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/skeall",
    "agentPageUrl": "https://openagent3.xyz/skills/skeall/agent",
    "manifestUrl": "https://openagent3.xyz/skills/skeall/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/skeall/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Skeall",
        "body": "Create, improve, and audit Agent Skills following the Agent Skills open standard. This skill encodes lessons from real-world skill development and cross-platform compatibility testing."
      },
      {
        "title": "Quick start",
        "body": "/skeall --create              # Interview, then scaffold new skill\n/skeall --improve <path>      # Analyze and improve existing skill\n/skeall --scan <path>         # Audit only, no changes (report)\n/skeall --scan .              # Audit skill in current directory\n/skeall --scan-all            # Batch scan all skills in ~/.claude/skills/\n/skeall --scan-all <dir>      # Batch scan all skills in custom directory\n/skeall --healthcheck <path>  # Runtime check single skill (orphans, deps, env, URLs)\n/skeall --healthcheck-all     # Runtime check all skills in ~/.openclaw/skills/\n/skeall --healthcheck-all <dir> # Runtime check all skills in custom directory"
      },
      {
        "title": "Process",
        "body": "Interview the user (ask questions 1-4 always, then 5-6 if user hasn't already specified complexity or distribution scope):\n\nWhat does this skill do? (one sentence)\nWhat category? Reference / Task / MCP Enhancement / Hybrid. See references/advanced-patterns.md\nWhat triggers should activate it? (keywords users would type)\nDoes it accept arguments? (e.g., file path, topic — use $ARGUMENTS or $ARGUMENTS[N] in body)\nHow complex is it? (single file vs references/ needed)\nWill this skill be shared? (personal / project / public) — affects README, license, metadata\n\n\n\nGenerate the skill structure:\n\n{skill-name}/\n├── SKILL.md                    # Core instructions (always loaded)\n├── references/                 # On-demand detail files\n│   ├── {topic-1}.md\n│   └── {topic-2}.md\n└── README.md                   # GitHub-facing (optional)\n\nWrite SKILL.md following these rules:\n\nYAML frontmatter with name and description (see Frontmatter section)\nBody under 500 lines, under 5000 tokens\nInstruction-based framing, not persona-based\nProgressive disclosure: core in SKILL.md, details in references/\n\n\n\nShow the generated SKILL.md to user for review.\n\n\nRun --scan on the generated skill. If any HIGH issues found, fix them before delivering.\n\nNext step: \"Optimize with reprompter?\" (optional, see Reprompter section). Then suggest installing the skill."
      },
      {
        "title": "Process",
        "body": "Read SKILL.md first. Read reference files only if scan identifies issues requiring them (broken links, routing table mismatches).\nRun the scan checklist (see Mode 3).\nFor each issue found, propose a specific before/after edit.\nGroup edits by priority: HIGH first, then MEDIUM, then LOW.\nAsk user: \"Fix all? Review one by one? Or just the HIGHs?\" (recommended: fix all HIGHs automatically, review MEDIUMs)\nApply approved edits.\nRe-scan once. If new issues appear, report them but do not enter an infinite fix loop.\n\nNext step: \"Run --scan to verify?\" or \"Commit changes?\""
      },
      {
        "title": "Common improvements",
        "body": "ProblemFixBody over 5000 tokensMove detail sections to references/Redundant contentSingle source of truth, reference elsewherePersona-based framingSwitch to instruction-based framingMissing trigger phrasesAdd keywords to description fieldPlatform-specific patternsReplace with universal formattingNo progressive disclosureAdd routing table to reference files"
      },
      {
        "title": "Process",
        "body": "Read the skill's SKILL.md and directory structure.\nCheck every item in the checklist below.\nOutput a severity-tagged report."
      },
      {
        "title": "Report format",
        "body": "## Skill Audit: {skill-name}\n\nScore: X.X/10\n\nSTRUCTURE\n  [PASS] S1 -- SKILL.md exists at root\n  [FAIL] S3 HIGH -- name does not match directory name\n  [WARN] S5 MEDIUM -- No references/ directory\n\nFRONTMATTER\n  [PASS] F2 -- Trigger phrases present\n  [FAIL] F1 HIGH -- description over 1024 characters\n\nCONTENT\n  [WARN] C5 MEDIUM -- Persona-based framing (\"You are an expert\")\n  [FAIL] C3 HIGH -- Same content repeated 3 times (lines 45, 120, 280)\n\nLLM-FRIENDLINESS\n  [WARN] L4 MEDIUM -- Unicode arrows instead of markdown tables\n  [PASS] L3 -- No emoji markers in headings\n\nSECURITY\n  [PASS] SEC1 -- No XML angle brackets in frontmatter\n  [PASS] SEC3 -- No hardcoded secrets\n\nCROSS-PLATFORM\n  [PASS] X1 -- No {baseDir} placeholders\n  [WARN] X4 LOW -- No multi-platform install instructions in README\n\nTotal: 3 HIGH | 4 MEDIUM | 1 LOW\n\nNext step after scan: \"Want me to fix these? Run /skeall --improve <path>\""
      },
      {
        "title": "Error handling",
        "body": "InputResponseNo SKILL.md found at path\"No skill found at {path}. Did you mean --create?\"Empty directory for --scan-all\"No skills found in {dir}. Skills must have a SKILL.md file.\"Invalid YAML frontmatterReport the parse error, suggest fixing frontmatter first--improve on non-skill file\"Not a valid skill (no YAML frontmatter). Try --create instead.\"--improve on a skill scoring 10/10\"Scan found 0 issues (score 10.0/10). No changes needed. Consider running trigger and functional tests.\""
      },
      {
        "title": "Frontmatter (required)",
        "body": "---\nname: my-skill-name\ndescription: What this skill does and when to use it. Include trigger phrases.\n---\n\nname rules:\n\nMust match the parent directory name\nLowercase alphanumeric with hyphens only (unicode lowercase allowed)\n1-64 characters, no leading/trailing/consecutive hyphens\nNo spaces, no special characters, no reserved words (\"anthropic\", \"claude\")\nRecommended: gerund form (processing-pdfs, testing-code) or descriptive noun (pdf-processor)\n\ndescription rules:\n\nExplain WHAT it does AND WHEN to use it\nWrite in third person (\"Processes files\", not \"I can process\" or \"You can use\")\nInclude trigger phrases users would actually type\nPut the most important keyword first (platforms weight first words)\nSpec limit: 1024 characters. Recommended: under 300 for best matching\nUse noun-phrase style (\"Guide for X\"), not persona style (\"Expert in X\")\nNo XML angle brackets (<, >) in any frontmatter value (injection risk)"
      },
      {
        "title": "Optional frontmatter fields",
        "body": "These are silently ignored by platforms that do not support them:\n\nlicense: MIT                          # For distributed skills\ncompatibility: \"Node.js 18+\"         # Environment requirements (max 500 chars)\nmetadata:                             # Arbitrary key-value (author, version)\n  author: your-name\n  version: 1.0.0\nallowed-tools: \"Bash Read\"           # Experimental: space-delimited tool list\nuser-invocable: true                  # Show in /slash menu (false = hidden but still callable)\ndisable-model-invocation: true        # Block Claude from auto-loading this skill\nargument-hint: \"<file-path>\"          # Hint shown in /skill autocomplete\nmodel: opus                           # Override model for this skill\ncontext: fork                         # Run in isolated subagent\nagent: general-purpose                # Subagent type: general-purpose, Explore, Plan, or custom\nhooks:                                # Skill-scoped lifecycle hooks\n  PostToolCall: \"validate.sh\""
      },
      {
        "title": "Directory structure",
        "body": "skill-name/\n├── SKILL.md           # REQUIRED -- core instructions\n├── references/        # OPTIONAL -- on-demand detail files\n├── scripts/           # OPTIONAL -- executable scripts\n├── assets/            # OPTIONAL -- static assets (images, etc.)\n└── README.md          # OPTIONAL -- GitHub-facing docs"
      },
      {
        "title": "Token budget",
        "body": "LevelContentBudgetMetadata (YAML frontmatter)name + description~100 tokensInstructions (SKILL.md body)Always loaded by LLM< 5000 tokensReferences (each file)Loaded on demand~2000-3000 tokens each\n\nEstimation: ~1.5 tokens per word for mixed code+prose markdown.\n\nProgressive disclosure: SKILL.md body should handle ~70% of user requests. Reference files handle the remaining 30% (detailed workflows, complete examples, edge cases)."
      },
      {
        "title": "Line limits",
        "body": "GuidelineLimitSKILL.md bodyUnder 500 lines (under 300 for complex skills with many references)Reference filesNo hard limit, but keep each under 700 lines. Add TOC at top if over 100 lines"
      },
      {
        "title": "Structure checks",
        "body": "IDSeverityCheckS1HIGHSKILL.md exists at skill rootS2HIGHYAML frontmatter present with --- delimitersS3HIGHname field present and valid (lowercase, hyphens, 1-64 chars, no consecutive hyphens)S4HIGHdescription field presentS5MEDIUMReferences in references/ not loose at rootS6LOWREADME.md present for GitHub-hosted skillsS7LOWNo unnecessary files (node_modules, .DS_Store, etc.)S8HIGHname field matches parent directory name"
      },
      {
        "title": "Frontmatter checks",
        "body": "IDSeverityCheckF1HIGHDescription under 1024 characters (spec limit)F1bLOWDescription under 300 characters (recommended for matching)F2HIGHDescription includes trigger phrasesF3MEDIUMDescription starts with noun phrase, not \"Expert in\"F4MEDIUMName 1-64 characters, no leading/trailing/consecutive hyphensF5LOWNo platform-specific fields (keeps universal compatibility)"
      },
      {
        "title": "Content checks",
        "body": "IDSeverityCheckC1HIGHBody under 500 linesC2HIGHEstimated tokens under 5000C3HIGHNo content repeated in SKILL.md body (controlled repetition across reference files is acceptable)C4HIGHCode examples use correct, verified patternsC5MEDIUMInstruction-based framing (not \"You are an expert\")C6MEDIUMHas routing table to reference files (if references/ exists)C7MEDIUMTroubleshooting section present (for skills with code blocks or CLI commands)C8LOWNo deprecated content at the top (wastes prime token space)C9MEDIUMRouting table completeness: if references/ exists, SKILL.md lists ALL files in references/C10MEDIUMInternal count consistency: claimed counts (\"34 patterns\", \"8 phases\") match actual contentC11MEDIUMNo stale references: documented APIs, functions, model names exist in actual source"
      },
      {
        "title": "LLM-friendliness checks",
        "body": "IDSeverityCheckL1HIGHTables for structured data (not bullet lists with arrows)L2HIGHImperative instructions (\"Do X\", not \"You should consider X\")L3MEDIUMNo emoji in headings or structural markers (frontmatter metadata values are data, not markers)L4MEDIUMNo Unicode arrows or special characters for data flowL5MEDIUMConsistent heading hierarchy (no skipped levels). Ignore headings inside fenced code blocksL6MEDIUMCode blocks have language tagsL7LOWSentence case headings (not Title Case)L8LOWNo nested blockquotes (some LLMs parse poorly)"
      },
      {
        "title": "Security checks",
        "body": "IDSeverityCheckSEC1HIGHNo XML angle brackets (<, >) in frontmatter valuesSEC2HIGHName does not contain reserved words (\"anthropic\", \"claude\")SEC3HIGHNo hardcoded API keys, tokens, or secrets in any skill fileSEC4MEDIUMScripts include error handling (not bare commands)SEC5HIGHNo credential patterns (Bearer eyJ, sk-/pk- prefixes, api_key=/token= + long strings). Ignore $ENV_VAR refs and YOUR_KEY_HERE placeholders"
      },
      {
        "title": "Cross-platform checks",
        "body": "IDSeverityCheckX1HIGHNo {baseDir} placeholders (breaks non-OpenClaw platforms)X2MEDIUMRelative paths from SKILL.md to references/X3MEDIUMInternal links use standard markdown [text](path)X4LOWREADME has multi-platform install paths"
      },
      {
        "title": "Runtime checks (healthcheck mode only)",
        "body": "IDSeverityCheckR1HIGHOrphan skill: not referenced in any config or skill registryR2HIGHDuplicate name: same name field found in 2+ skill directoriesR3HIGHTrigger collision: description phrases 80%+ overlap with another skillR4HIGHBroken dependency: file referenced in SKILL.md does not existR5MEDIUMStale endpoint: URL in curl command returns 404 or times outR6MEDIUMMissing env var: $VAR reference found but not set in environmentR7LOWToken cost: estimated tokens loaded per session"
      },
      {
        "title": "LLM-friendliness patterns",
        "body": "These patterns come from real cross-platform testing. Apply them when creating or improving skills."
      },
      {
        "title": "Do",
        "body": "Tables over prose for structured data (parameters, options, comparisons)\nSingle source of truth for any concept explained more than once\nInstruction-based framing: \"This skill provides instructions for X. Follow these patterns exactly.\"\nImperative verbs: \"Call X after Y\", \"Use Z for W\"\nCompact routing table at the top pointing to reference files\nParameter comments inline in code blocks: providerAddress, // 1st: wallet address\nCopyable progress checklists for multi-step workflows (LLM tracks completion)\nValidation feedback loops for quality-sensitive output (generate, score, retry if needed)\nConsistent freedom level per section — do not mix exact scripts with vague guidance. See references/advanced-patterns.md"
      },
      {
        "title": "Do not",
        "body": "Persona-based framing: \"You are an expert in...\" (Claude-leaning, other LLMs respond better to instructions)\nEmoji markers in headings or structural elements (token-expensive, parsed inconsistently). Emoji in frontmatter metadata values is data and acceptable\nUnicode arrows (→, ←) for data flow — use tables or plain prose\nBlockquote warnings at top of SKILL.md (wastes prime token space, primes distrust)\n\"When Users Ask\" checklists with 10+ items (bury critical rules, use tables instead)\nSynonym cycling for the same concept (confuses LLMs about whether it's the same thing)\nRepeated content (wastes tokens, risks contradictions if copies drift)\nAssuming exclusive activation (other skills may load simultaneously — declare dependencies explicitly)"
      },
      {
        "title": "Description field optimization",
        "body": "Good description pattern:\n\n{Product/Tool name} guide for {primary use case}. Covers {feature list}.\nUse this skill for {trigger phrases separated by commas}.\n\nExample:\n\ndescription: 0G Compute Network guide for decentralized AI inference and fine-tuning.\n  Covers chatbots, image generation, speech-to-text, SDK integration, CLI commands.\n  Use this skill for any 0G compute, 0G AI, or decentralized GPU question."
      },
      {
        "title": "Universal format (works everywhere)",
        "body": "Only name and description in frontmatter. Standard markdown body. Relative paths. No platform-specific syntax."
      },
      {
        "title": "Platform discovery paths",
        "body": "PlatformUser-wideProjectClaude Code~/.claude/skills/{name}/.claude/skills/{name}/OpenAI Codex~/.agents/skills/{name}/.agents/skills/{name}/OpenClaw~/.openclaw/skills/{name}/.openclaw/skills/{name}/CursorStandard SKILL.md discoveryProject skills dirGemini CLIStandard SKILL.md discoveryProject skills dir"
      },
      {
        "title": "Codex-specific extensions",
        "body": "OpenAI Codex adds an optional openai.yaml file alongside SKILL.md for platform metadata (interface, policy, dependencies). SKILL.md itself stays cross-platform. See references/advanced-patterns.md for details."
      },
      {
        "title": "Things that break cross-platform",
        "body": "PatternProblemFix{baseDir} placeholderOnly OpenClaw resolves itUse relative pathsPlatform-specific instructionsConfuse other LLMsKeep instructions genericHardcoded pathsBreak on other OS/platformsUse relative from SKILL.md"
      },
      {
        "title": "Token estimation",
        "body": "Estimate: wc -w SKILL.md × 1.5 (prose) or × 1.7 (code-heavy files)."
      },
      {
        "title": "Budget allocation guide",
        "body": "Skill complexitySKILL.md targetReferences needed?Simple (one topic, few commands)100-200 lines / ~1500 tokensNoMedium (multiple features, some code)200-350 lines / ~3000 tokens1-2 filesComplex (multi-domain, many patterns)300-450 lines / ~4500 tokens3-5 files"
      },
      {
        "title": "Severity reference",
        "body": "SeverityMeaningActionHIGHBreaks spec compliance or causes LLM confusionMust fixMEDIUMReduces quality or cross-platform compatibilityShould fixLOWMinor improvement opportunityFix if time permits"
      },
      {
        "title": "Mode 4: Batch scan (scan-all)",
        "body": "Scan every skill in a directory at once. Useful for auditing your entire skill collection."
      },
      {
        "title": "Process",
        "body": "List all subdirectories containing SKILL.md in the target path (default: ~/.claude/skills/).\nRun Mode 3 (scan) on each skill. Output each skill's score as you complete it.\nOutput a summary table sorted by score ascending (worst first)."
      },
      {
        "title": "Report format",
        "body": "## Batch Skill Audit\n\n| Skill | Score | HIGH | MEDIUM | LOW | Status |\n|-------|-------|------|--------|-----|--------|\n| seo-optimizer | 5/10 | 3 | 2 | 1 | NEEDS WORK |\n| reprompter | 6/10 | 2 | 3 | 0 | NEEDS WORK |\n| blogger | 7/10 | 1 | 1 | 2 | NEEDS WORK |\n| humanizer-enhanced | 8/10 | 0 | 2 | 1 | PASS |\n\nTotal: 4 skills scanned\nPASS: 1 | NEEDS WORK: 3\n\nTop issues across all skills:\n1. [HIGH] C2 reprompter: Body exceeds 5000 tokens (est. 8,200)\n2. [HIGH] C3 seo-optimizer: Content repeated 4 times\n3. [HIGH] C5 reprompter: Persona-based framing\n\nPASS threshold: Score 7+ with zero HIGH issues.\n\nNext step: \"Start with the lowest-scoring skill. Run /skeall --improve <path> on it.\""
      },
      {
        "title": "Mode 5: Health check (runtime audit)",
        "body": "Checks whether a skill actually works at runtime — beyond what static scan can catch. Run static scan (Mode 3) first and fix HIGH issues before health check."
      },
      {
        "title": "Process",
        "body": "Run R1-R7 checks against the target skill.\nFor --healthcheck-all: cross-check all skills for duplicates (R2) and trigger collisions (R3).\nOutput severity-tagged report with sections: RUNTIME, DUPLICATES, TRIGGER COLLISIONS.\nLabels: [FAIL] for HIGH issues (must fix), [WARN] for MEDIUM (runtime risk), [INFO] for LOW.\n\nFor detection algorithms, report format examples, and batch output format, see references/healthcheck.md."
      },
      {
        "title": "Scoring methodology",
        "body": "Formula: Score = max(0, 10 - (HIGHs x 1.5) - min(MEDIUMs x 0.5, 3) - min(LOWs x 0.2, 1))\n\nPASS threshold: Score 7+ AND zero HIGH issues. For detailed examples, see references/scoring.md."
      },
      {
        "title": "Troubleshooting",
        "body": "IssueFixToken estimate seems wrongUse wc -w and multiply by 1.5 (prose) or 1.7 (code-heavy)Scan reports FAIL but skill works fineHIGHs indicate spec/LLM issues, not runtime bugs. Fix them anyway.Batch scan misses a skillSkill directory must contain SKILL.md at rootTwo fixes contradict each otherFlag the conflict, ask user to choose (e.g., \"shorten file\" vs \"add section\")Score 7+ but still NEEDS WORKCheck for HIGH issues. Any HIGH = NEEDS WORK regardless of score"
      },
      {
        "title": "References",
        "body": "For detailed checklists and examples, see:\n\nAnti-patterns with before/after examples\nRuntime health check algorithms and real examples\nComplete SKILL.md template\nScoring methodology details\nTesting patterns and examples\nAdvanced patterns: categories, freedom levels, distribution, MCP, workflows\n\nTesting your skill: After create or improve, test trigger activation (3-5 keyword variants), functional output, and negative (unrelated queries stay quiet). See references/testing.md.\n\nMCP integration: Use fully qualified tool names (mcp__server__tool_name). Document required MCP servers and provide fallbacks. See references/advanced-patterns.md.\n\nReprompter integration (optional): After --create interview, say \"reprompter optimize\" to score description variants and validate code examples. Works standalone if reprompter is not installed."
      }
    ],
    "body": "Skeall\n\nCreate, improve, and audit Agent Skills following the Agent Skills open standard. This skill encodes lessons from real-world skill development and cross-platform compatibility testing.\n\nQuick start\n/skeall --create              # Interview, then scaffold new skill\n/skeall --improve <path>      # Analyze and improve existing skill\n/skeall --scan <path>         # Audit only, no changes (report)\n/skeall --scan .              # Audit skill in current directory\n/skeall --scan-all            # Batch scan all skills in ~/.claude/skills/\n/skeall --scan-all <dir>      # Batch scan all skills in custom directory\n/skeall --healthcheck <path>  # Runtime check single skill (orphans, deps, env, URLs)\n/skeall --healthcheck-all     # Runtime check all skills in ~/.openclaw/skills/\n/skeall --healthcheck-all <dir> # Runtime check all skills in custom directory\n\nMode 1: Create (scaffold a new skill)\nProcess\n\nInterview the user (ask questions 1-4 always, then 5-6 if user hasn't already specified complexity or distribution scope):\n\nWhat does this skill do? (one sentence)\nWhat category? Reference / Task / MCP Enhancement / Hybrid. See references/advanced-patterns.md\nWhat triggers should activate it? (keywords users would type)\nDoes it accept arguments? (e.g., file path, topic — use $ARGUMENTS or $ARGUMENTS[N] in body)\nHow complex is it? (single file vs references/ needed)\nWill this skill be shared? (personal / project / public) — affects README, license, metadata\n\nGenerate the skill structure:\n\n{skill-name}/\n├── SKILL.md                    # Core instructions (always loaded)\n├── references/                 # On-demand detail files\n│   ├── {topic-1}.md\n│   └── {topic-2}.md\n└── README.md                   # GitHub-facing (optional)\n\n\nWrite SKILL.md following these rules:\n\nYAML frontmatter with name and description (see Frontmatter section)\nBody under 500 lines, under 5000 tokens\nInstruction-based framing, not persona-based\nProgressive disclosure: core in SKILL.md, details in references/\n\nShow the generated SKILL.md to user for review.\n\nRun --scan on the generated skill. If any HIGH issues found, fix them before delivering.\n\nNext step: \"Optimize with reprompter?\" (optional, see Reprompter section). Then suggest installing the skill.\n\nMode 2: Improve (refactor existing skill)\nProcess\nRead SKILL.md first. Read reference files only if scan identifies issues requiring them (broken links, routing table mismatches).\nRun the scan checklist (see Mode 3).\nFor each issue found, propose a specific before/after edit.\nGroup edits by priority: HIGH first, then MEDIUM, then LOW.\nAsk user: \"Fix all? Review one by one? Or just the HIGHs?\" (recommended: fix all HIGHs automatically, review MEDIUMs)\nApply approved edits.\nRe-scan once. If new issues appear, report them but do not enter an infinite fix loop.\n\nNext step: \"Run --scan to verify?\" or \"Commit changes?\"\n\nCommon improvements\nProblem\tFix\nBody over 5000 tokens\tMove detail sections to references/\nRedundant content\tSingle source of truth, reference elsewhere\nPersona-based framing\tSwitch to instruction-based framing\nMissing trigger phrases\tAdd keywords to description field\nPlatform-specific patterns\tReplace with universal formatting\nNo progressive disclosure\tAdd routing table to reference files\nMode 3: Scan (audit and report)\nProcess\nRead the skill's SKILL.md and directory structure.\nCheck every item in the checklist below.\nOutput a severity-tagged report.\nReport format\n## Skill Audit: {skill-name}\n\nScore: X.X/10\n\nSTRUCTURE\n  [PASS] S1 -- SKILL.md exists at root\n  [FAIL] S3 HIGH -- name does not match directory name\n  [WARN] S5 MEDIUM -- No references/ directory\n\nFRONTMATTER\n  [PASS] F2 -- Trigger phrases present\n  [FAIL] F1 HIGH -- description over 1024 characters\n\nCONTENT\n  [WARN] C5 MEDIUM -- Persona-based framing (\"You are an expert\")\n  [FAIL] C3 HIGH -- Same content repeated 3 times (lines 45, 120, 280)\n\nLLM-FRIENDLINESS\n  [WARN] L4 MEDIUM -- Unicode arrows instead of markdown tables\n  [PASS] L3 -- No emoji markers in headings\n\nSECURITY\n  [PASS] SEC1 -- No XML angle brackets in frontmatter\n  [PASS] SEC3 -- No hardcoded secrets\n\nCROSS-PLATFORM\n  [PASS] X1 -- No {baseDir} placeholders\n  [WARN] X4 LOW -- No multi-platform install instructions in README\n\nTotal: 3 HIGH | 4 MEDIUM | 1 LOW\n\n\nNext step after scan: \"Want me to fix these? Run /skeall --improve <path>\"\n\nError handling\nInput\tResponse\nNo SKILL.md found at path\t\"No skill found at {path}. Did you mean --create?\"\nEmpty directory for --scan-all\t\"No skills found in {dir}. Skills must have a SKILL.md file.\"\nInvalid YAML frontmatter\tReport the parse error, suggest fixing frontmatter first\n--improve on non-skill file\t\"Not a valid skill (no YAML frontmatter). Try --create instead.\"\n--improve on a skill scoring 10/10\t\"Scan found 0 issues (score 10.0/10). No changes needed. Consider running trigger and functional tests.\"\nAgent Skills spec reference\nFrontmatter (required)\n---\nname: my-skill-name\ndescription: What this skill does and when to use it. Include trigger phrases.\n---\n\n\nname rules:\n\nMust match the parent directory name\nLowercase alphanumeric with hyphens only (unicode lowercase allowed)\n1-64 characters, no leading/trailing/consecutive hyphens\nNo spaces, no special characters, no reserved words (\"anthropic\", \"claude\")\nRecommended: gerund form (processing-pdfs, testing-code) or descriptive noun (pdf-processor)\n\ndescription rules:\n\nExplain WHAT it does AND WHEN to use it\nWrite in third person (\"Processes files\", not \"I can process\" or \"You can use\")\nInclude trigger phrases users would actually type\nPut the most important keyword first (platforms weight first words)\nSpec limit: 1024 characters. Recommended: under 300 for best matching\nUse noun-phrase style (\"Guide for X\"), not persona style (\"Expert in X\")\nNo XML angle brackets (<, >) in any frontmatter value (injection risk)\nOptional frontmatter fields\n\nThese are silently ignored by platforms that do not support them:\n\nlicense: MIT                          # For distributed skills\ncompatibility: \"Node.js 18+\"         # Environment requirements (max 500 chars)\nmetadata:                             # Arbitrary key-value (author, version)\n  author: your-name\n  version: 1.0.0\nallowed-tools: \"Bash Read\"           # Experimental: space-delimited tool list\nuser-invocable: true                  # Show in /slash menu (false = hidden but still callable)\ndisable-model-invocation: true        # Block Claude from auto-loading this skill\nargument-hint: \"<file-path>\"          # Hint shown in /skill autocomplete\nmodel: opus                           # Override model for this skill\ncontext: fork                         # Run in isolated subagent\nagent: general-purpose                # Subagent type: general-purpose, Explore, Plan, or custom\nhooks:                                # Skill-scoped lifecycle hooks\n  PostToolCall: \"validate.sh\"\n\nDirectory structure\nskill-name/\n├── SKILL.md           # REQUIRED -- core instructions\n├── references/        # OPTIONAL -- on-demand detail files\n├── scripts/           # OPTIONAL -- executable scripts\n├── assets/            # OPTIONAL -- static assets (images, etc.)\n└── README.md          # OPTIONAL -- GitHub-facing docs\n\nToken budget\nLevel\tContent\tBudget\nMetadata (YAML frontmatter)\tname + description\t~100 tokens\nInstructions (SKILL.md body)\tAlways loaded by LLM\t< 5000 tokens\nReferences (each file)\tLoaded on demand\t~2000-3000 tokens each\n\nEstimation: ~1.5 tokens per word for mixed code+prose markdown.\n\nProgressive disclosure: SKILL.md body should handle ~70% of user requests. Reference files handle the remaining 30% (detailed workflows, complete examples, edge cases).\n\nLine limits\nGuideline\tLimit\nSKILL.md body\tUnder 500 lines (under 300 for complex skills with many references)\nReference files\tNo hard limit, but keep each under 700 lines. Add TOC at top if over 100 lines\nScan checklist\nStructure checks\nID\tSeverity\tCheck\nS1\tHIGH\tSKILL.md exists at skill root\nS2\tHIGH\tYAML frontmatter present with --- delimiters\nS3\tHIGH\tname field present and valid (lowercase, hyphens, 1-64 chars, no consecutive hyphens)\nS4\tHIGH\tdescription field present\nS5\tMEDIUM\tReferences in references/ not loose at root\nS6\tLOW\tREADME.md present for GitHub-hosted skills\nS7\tLOW\tNo unnecessary files (node_modules, .DS_Store, etc.)\nS8\tHIGH\tname field matches parent directory name\nFrontmatter checks\nID\tSeverity\tCheck\nF1\tHIGH\tDescription under 1024 characters (spec limit)\nF1b\tLOW\tDescription under 300 characters (recommended for matching)\nF2\tHIGH\tDescription includes trigger phrases\nF3\tMEDIUM\tDescription starts with noun phrase, not \"Expert in\"\nF4\tMEDIUM\tName 1-64 characters, no leading/trailing/consecutive hyphens\nF5\tLOW\tNo platform-specific fields (keeps universal compatibility)\nContent checks\nID\tSeverity\tCheck\nC1\tHIGH\tBody under 500 lines\nC2\tHIGH\tEstimated tokens under 5000\nC3\tHIGH\tNo content repeated in SKILL.md body (controlled repetition across reference files is acceptable)\nC4\tHIGH\tCode examples use correct, verified patterns\nC5\tMEDIUM\tInstruction-based framing (not \"You are an expert\")\nC6\tMEDIUM\tHas routing table to reference files (if references/ exists)\nC7\tMEDIUM\tTroubleshooting section present (for skills with code blocks or CLI commands)\nC8\tLOW\tNo deprecated content at the top (wastes prime token space)\nC9\tMEDIUM\tRouting table completeness: if references/ exists, SKILL.md lists ALL files in references/\nC10\tMEDIUM\tInternal count consistency: claimed counts (\"34 patterns\", \"8 phases\") match actual content\nC11\tMEDIUM\tNo stale references: documented APIs, functions, model names exist in actual source\nLLM-friendliness checks\nID\tSeverity\tCheck\nL1\tHIGH\tTables for structured data (not bullet lists with arrows)\nL2\tHIGH\tImperative instructions (\"Do X\", not \"You should consider X\")\nL3\tMEDIUM\tNo emoji in headings or structural markers (frontmatter metadata values are data, not markers)\nL4\tMEDIUM\tNo Unicode arrows or special characters for data flow\nL5\tMEDIUM\tConsistent heading hierarchy (no skipped levels). Ignore headings inside fenced code blocks\nL6\tMEDIUM\tCode blocks have language tags\nL7\tLOW\tSentence case headings (not Title Case)\nL8\tLOW\tNo nested blockquotes (some LLMs parse poorly)\nSecurity checks\nID\tSeverity\tCheck\nSEC1\tHIGH\tNo XML angle brackets (<, >) in frontmatter values\nSEC2\tHIGH\tName does not contain reserved words (\"anthropic\", \"claude\")\nSEC3\tHIGH\tNo hardcoded API keys, tokens, or secrets in any skill file\nSEC4\tMEDIUM\tScripts include error handling (not bare commands)\nSEC5\tHIGH\tNo credential patterns (Bearer eyJ, sk-/pk- prefixes, api_key=/token= + long strings). Ignore $ENV_VAR refs and YOUR_KEY_HERE placeholders\nCross-platform checks\nID\tSeverity\tCheck\nX1\tHIGH\tNo {baseDir} placeholders (breaks non-OpenClaw platforms)\nX2\tMEDIUM\tRelative paths from SKILL.md to references/\nX3\tMEDIUM\tInternal links use standard markdown [text](path)\nX4\tLOW\tREADME has multi-platform install paths\nRuntime checks (healthcheck mode only)\nID\tSeverity\tCheck\nR1\tHIGH\tOrphan skill: not referenced in any config or skill registry\nR2\tHIGH\tDuplicate name: same name field found in 2+ skill directories\nR3\tHIGH\tTrigger collision: description phrases 80%+ overlap with another skill\nR4\tHIGH\tBroken dependency: file referenced in SKILL.md does not exist\nR5\tMEDIUM\tStale endpoint: URL in curl command returns 404 or times out\nR6\tMEDIUM\tMissing env var: $VAR reference found but not set in environment\nR7\tLOW\tToken cost: estimated tokens loaded per session\nLLM-friendliness patterns\n\nThese patterns come from real cross-platform testing. Apply them when creating or improving skills.\n\nDo\nTables over prose for structured data (parameters, options, comparisons)\nSingle source of truth for any concept explained more than once\nInstruction-based framing: \"This skill provides instructions for X. Follow these patterns exactly.\"\nImperative verbs: \"Call X after Y\", \"Use Z for W\"\nCompact routing table at the top pointing to reference files\nParameter comments inline in code blocks: providerAddress, // 1st: wallet address\nCopyable progress checklists for multi-step workflows (LLM tracks completion)\nValidation feedback loops for quality-sensitive output (generate, score, retry if needed)\nConsistent freedom level per section — do not mix exact scripts with vague guidance. See references/advanced-patterns.md\nDo not\nPersona-based framing: \"You are an expert in...\" (Claude-leaning, other LLMs respond better to instructions)\nEmoji markers in headings or structural elements (token-expensive, parsed inconsistently). Emoji in frontmatter metadata values is data and acceptable\nUnicode arrows (→, ←) for data flow — use tables or plain prose\nBlockquote warnings at top of SKILL.md (wastes prime token space, primes distrust)\n\"When Users Ask\" checklists with 10+ items (bury critical rules, use tables instead)\nSynonym cycling for the same concept (confuses LLMs about whether it's the same thing)\nRepeated content (wastes tokens, risks contradictions if copies drift)\nAssuming exclusive activation (other skills may load simultaneously — declare dependencies explicitly)\nDescription field optimization\n\nGood description pattern:\n\n{Product/Tool name} guide for {primary use case}. Covers {feature list}.\nUse this skill for {trigger phrases separated by commas}.\n\n\nExample:\n\ndescription: 0G Compute Network guide for decentralized AI inference and fine-tuning.\n  Covers chatbots, image generation, speech-to-text, SDK integration, CLI commands.\n  Use this skill for any 0G compute, 0G AI, or decentralized GPU question.\n\nCross-platform compatibility\nUniversal format (works everywhere)\n\nOnly name and description in frontmatter. Standard markdown body. Relative paths. No platform-specific syntax.\n\nPlatform discovery paths\nPlatform\tUser-wide\tProject\nClaude Code\t~/.claude/skills/{name}/\t.claude/skills/{name}/\nOpenAI Codex\t~/.agents/skills/{name}/\t.agents/skills/{name}/\nOpenClaw\t~/.openclaw/skills/{name}/\t.openclaw/skills/{name}/\nCursor\tStandard SKILL.md discovery\tProject skills dir\nGemini CLI\tStandard SKILL.md discovery\tProject skills dir\nCodex-specific extensions\n\nOpenAI Codex adds an optional openai.yaml file alongside SKILL.md for platform metadata (interface, policy, dependencies). SKILL.md itself stays cross-platform. See references/advanced-patterns.md for details.\n\nThings that break cross-platform\nPattern\tProblem\tFix\n{baseDir} placeholder\tOnly OpenClaw resolves it\tUse relative paths\nPlatform-specific instructions\tConfuse other LLMs\tKeep instructions generic\nHardcoded paths\tBreak on other OS/platforms\tUse relative from SKILL.md\nToken estimation\n\nEstimate: wc -w SKILL.md × 1.5 (prose) or × 1.7 (code-heavy files).\n\nBudget allocation guide\nSkill complexity\tSKILL.md target\tReferences needed?\nSimple (one topic, few commands)\t100-200 lines / ~1500 tokens\tNo\nMedium (multiple features, some code)\t200-350 lines / ~3000 tokens\t1-2 files\nComplex (multi-domain, many patterns)\t300-450 lines / ~4500 tokens\t3-5 files\nSeverity reference\nSeverity\tMeaning\tAction\nHIGH\tBreaks spec compliance or causes LLM confusion\tMust fix\nMEDIUM\tReduces quality or cross-platform compatibility\tShould fix\nLOW\tMinor improvement opportunity\tFix if time permits\nMode 4: Batch scan (scan-all)\n\nScan every skill in a directory at once. Useful for auditing your entire skill collection.\n\nProcess\nList all subdirectories containing SKILL.md in the target path (default: ~/.claude/skills/).\nRun Mode 3 (scan) on each skill. Output each skill's score as you complete it.\nOutput a summary table sorted by score ascending (worst first).\nReport format\n## Batch Skill Audit\n\n| Skill | Score | HIGH | MEDIUM | LOW | Status |\n|-------|-------|------|--------|-----|--------|\n| seo-optimizer | 5/10 | 3 | 2 | 1 | NEEDS WORK |\n| reprompter | 6/10 | 2 | 3 | 0 | NEEDS WORK |\n| blogger | 7/10 | 1 | 1 | 2 | NEEDS WORK |\n| humanizer-enhanced | 8/10 | 0 | 2 | 1 | PASS |\n\nTotal: 4 skills scanned\nPASS: 1 | NEEDS WORK: 3\n\nTop issues across all skills:\n1. [HIGH] C2 reprompter: Body exceeds 5000 tokens (est. 8,200)\n2. [HIGH] C3 seo-optimizer: Content repeated 4 times\n3. [HIGH] C5 reprompter: Persona-based framing\n\n\nPASS threshold: Score 7+ with zero HIGH issues.\n\nNext step: \"Start with the lowest-scoring skill. Run /skeall --improve <path> on it.\"\n\nMode 5: Health check (runtime audit)\n\nChecks whether a skill actually works at runtime — beyond what static scan can catch. Run static scan (Mode 3) first and fix HIGH issues before health check.\n\nProcess\nRun R1-R7 checks against the target skill.\nFor --healthcheck-all: cross-check all skills for duplicates (R2) and trigger collisions (R3).\nOutput severity-tagged report with sections: RUNTIME, DUPLICATES, TRIGGER COLLISIONS.\nLabels: [FAIL] for HIGH issues (must fix), [WARN] for MEDIUM (runtime risk), [INFO] for LOW.\n\nFor detection algorithms, report format examples, and batch output format, see references/healthcheck.md.\n\nScoring methodology\n\nFormula: Score = max(0, 10 - (HIGHs x 1.5) - min(MEDIUMs x 0.5, 3) - min(LOWs x 0.2, 1))\n\nPASS threshold: Score 7+ AND zero HIGH issues. For detailed examples, see references/scoring.md.\n\nTroubleshooting\nIssue\tFix\nToken estimate seems wrong\tUse wc -w and multiply by 1.5 (prose) or 1.7 (code-heavy)\nScan reports FAIL but skill works fine\tHIGHs indicate spec/LLM issues, not runtime bugs. Fix them anyway.\nBatch scan misses a skill\tSkill directory must contain SKILL.md at root\nTwo fixes contradict each other\tFlag the conflict, ask user to choose (e.g., \"shorten file\" vs \"add section\")\nScore 7+ but still NEEDS WORK\tCheck for HIGH issues. Any HIGH = NEEDS WORK regardless of score\nReferences\n\nFor detailed checklists and examples, see:\n\nAnti-patterns with before/after examples\nRuntime health check algorithms and real examples\nComplete SKILL.md template\nScoring methodology details\nTesting patterns and examples\nAdvanced patterns: categories, freedom levels, distribution, MCP, workflows\n\nTesting your skill: After create or improve, test trigger activation (3-5 keyword variants), functional output, and negative (unrelated queries stay quiet). See references/testing.md.\n\nMCP integration: Use fully qualified tool names (mcp__server__tool_name). Document required MCP servers and provide fallbacks. See references/advanced-patterns.md.\n\nReprompter integration (optional): After --create interview, say \"reprompter optimize\" to score description variants and validate code examples. Works standalone if reprompter is not installed."
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/dorukardahan/skeall",
    "publisherUrl": "https://clawhub.ai/dorukardahan/skeall",
    "owner": "dorukardahan",
    "version": "1.0.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/skeall",
    "downloadUrl": "https://openagent3.xyz/downloads/skeall",
    "agentUrl": "https://openagent3.xyz/skills/skeall/agent",
    "manifestUrl": "https://openagent3.xyz/skills/skeall/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/skeall/agent.md"
  }
}