Skip to content

Agent Skill Grading Report: opencode-cli - Score 84/100 (B) #20

@RichardHightower

Description

@RichardHightower

✅ Agent Skill Grading Report

Score: 84/100 | Grade: B

Quick Summary of Agent Skill Grades

Pillar Scores for Agent Skill

Pillar Score Max
Spec Compliance 13 15
Progressive Disclosure 27 30
Ease of Use 22 25
Writing Style 8 10
Utility 17 20
Modifiers -3 ±15

Issues Found: 4

  • 🔴 High: 0
  • 🟡 Medium: 1
  • 🟢 Low: 3

📊 Full Grading Report for Agent Skill

Skill Evaluation Report: opencode-cli

Links:

Evaluated: 2026-01-12
Files Reviewed: SKILL.md, README.md, references/provider-config.md, references/local-models.md, references/integration-patterns.md, references/cloud-providers.md, references/mcp-servers.md, references/vertex-ai-setup.md
Grading Model: Claude (default) (via claude)


Overall Score: 84/100

Pillar Score Max
Progressive Disclosure Architecture 27 30
Ease of Use 22 25
Spec Compliance 13 15
Writing Style 8 10
Utility 17 20
Modifiers -3 ±15

Grade: B


Executive Summary

This skill shows solid fundamentals with a score of 84/100. Strongest area: Progressive Disclosure Architecture (27/30).


Detailed Scores

Progressive Disclosure Architecture (27/30)

Criterion Score Max Assessment
Token Economy 9 10 SKILL.md is focused and concise; minimal redundancy across files; each section earns its tokens
Layered Structure 9 10 Clear separation: SKILL.md as overview (195 lines), 6 reference files for deep dives; excellent topic isolation
Reference Depth 5 5 All references exactly one level deep from SKILL.md; no nested sub-references
Navigation Signals 4 5 TOC in SKILL.md; clear headers in all files; reference table maps tasks to files; some files over 200 lines lack internal TOC

Ease of Use (22/25)

Criterion Score Max Assessment
Metadata Quality 9 10 Name follows kebab-case; description lists 17 specific triggers and covers all major use cases
Discoverability 6 6 Excellent trigger coverage: 'configure opencode', 'vertex ai', 'ollama', 'opencode mcp servers', etc.
Terminology Consistency 3 4 Consistent 'provider/model' format throughout; minor variation in schema URLs (opencode.ai vs opencode.dev)
Workflow Clarity 4 5 Quick Start has numbered steps; Verify Setup is checklist; some sections could use more explicit step numbering

Spec Compliance (13/15)

Criterion Score Max Assessment
Frontmatter Validity 5 5 Valid YAML with required fields
Name Conventions 4 4 Correct hyphen-case format
Description Quality 4 4 Third-person with good trigger coverage
Optional Fields 0 2 No optional fields used (no penalty)

Writing Style (8/10)

Criterion Score Max Assessment
Voice And Tense 3 4 Mostly imperative ('Set environment variables', 'Create service account'); occasional second-person ('your project')
Objectivity 3 3 No marketing language; purely instructional; factual descriptions of providers
Conciseness 2 3 Generally dense and focused; some sections could trim introductory sentences

Utility (17/20)

Criterion Score Max Assessment
Problem Solving Power 7 8 Addresses real need for headless LLM automation; covers 75+ providers; fills gap for non-Claude workflows
Degrees Of Freedom 4 5 Good balance: prescriptive for setup, flexible for model/provider choice; multi-provider configs supported
Feedback Loops 3 4 Verify Setup checklist present; troubleshooting sections in multiple files; verification commands provided
Examples And Templates 3 3 Complete JSON config templates for each provider; code examples for subprocess integration

Modifiers Applied (-3)

Penalties: xml_tags_in_metadata (-5), deeply_nested_references (-2)
Bonuses: grep_friendly_structure (+1), exemplary_examples (+2), trigger_phrases_4plus (+1)


Critical Issues (Top 4)

Issue 1: Schema URL inconsistency

Severity: Low
Location: references/local-models.md:35
Pillar Affected: Ease of Use

Problem: Schema URL differs from SKILL.md (opencode.dev vs opencode.ai)

Current:

"$schema": "https://opencode.dev/schema/opencode.json"

Suggested Rewrite:

"$schema": "https://opencode.ai/config.json"

Impact: +1 point


Issue 2: Missing TOC in long reference files

Severity: Medium
Location: references/provider-config.md
Pillar Affected: PDA

Problem: 380-line file lacks table of contents for navigation

Current:

No TOC, starts directly with content

Suggested Rewrite:

Add TOC after first heading with links to main sections

Impact: +1 point


Issue 3: Minor second-person usage

Severity: Low
Location: SKILL.md:various
Pillar Affected: Writing Style

Problem: Occasional 'your' usage in otherwise imperative text

Current:

Set these before running OpenCode:

Suggested Rewrite:

Set these environment variables before running OpenCode:

Impact: +0.5 points


Issue 4: Redundant Vertex AI section

Severity: Low
Location: SKILL.md:122-124
Pillar Affected: PDA

Problem: Vertex AI Setup section just links to reference; could merge into Reference Guides table

Current:

## Vertex AI Setup\n\nSee [vertex-ai-setup.md]...

Suggested Rewrite:

Remove standalone section; reference table already provides this link

Impact: +0.5 points


General Recommendations

  1. Add trigger phrases to description for discoverability
  2. Add table of contents for files over 100 lines

Grade Scale

Grade Score Description
A 90-100 Production-ready
B 80-89 Good, minor work
C 70-79 Adequate, gaps
D 60-69 Needs work
F <60 Major revision


About This Report

This evaluation uses the Claude Skills Best Practices.

Powered by:

Report generated for SpillwaveSolutions/opencode_cli

JSON Output

{
  "skill_name": "opencode-cli",
  "evaluated_at": "2026-01-12T20:40:42.128092",
  "files_reviewed": [
    "SKILL.md",
    "README.md",
    "references/provider-config.md",
    "references/local-models.md",
    "references/integration-patterns.md",
    "references/cloud-providers.md",
    "references/mcp-servers.md",
    "references/vertex-ai-setup.md"
  ],
  "scores": {
    "spec_compliance": {
      "total": 13,
      "max": 15,
      "breakdown": {
        "frontmatter_validity": {
          "score": 5,
          "max": 5,
          "assessment": "Valid YAML with required fields"
        },
        "name_conventions": {
          "score": 4,
          "max": 4,
          "assessment": "Correct hyphen-case format"
        },
        "description_quality": {
          "score": 4,
          "max": 4,
          "assessment": "Third-person with good trigger coverage"
        },
        "optional_fields": {
          "score": 0,
          "max": 2,
          "assessment": "No optional fields used (no penalty)"
        }
      }
    },
    "pda": {
      "total": 27,
      "max": 30,
      "breakdown": {
        "token_economy": {
          "score": 9,
          "max": 10,
          "assessment": "SKILL.md is focused and concise; minimal redundancy across files; each section earns its tokens"
        },
        "layered_structure": {
          "score": 9,
          "max": 10,
          "assessment": "Clear separation: SKILL.md as overview (195 lines), 6 reference files for deep dives; excellent topic isolation"
        },
        "reference_depth": {
          "score": 5,
          "max": 5,
          "assessment": "All references exactly one level deep from SKILL.md; no nested sub-references"
        },
        "navigation_signals": {
          "score": 4,
          "max": 5,
          "assessment": "TOC in SKILL.md; clear headers in all files; reference table maps tasks to files; some files over 200 lines lack internal TOC"
        }
      }
    },
    "ease_of_use": {
      "total": 22,
      "max": 25,
      "breakdown": {
        "metadata_quality": {
          "score": 9,
          "max": 10,
          "assessment": "Name follows kebab-case; description lists 17 specific triggers and covers all major use cases"
        },
        "discoverability": {
          "score": 6,
          "max": 6,
          "assessment": "Excellent trigger coverage: 'configure opencode', 'vertex ai', 'ollama', 'opencode mcp servers', etc."
        },
        "terminology_consistency": {
          "score": 3,
          "max": 4,
          "assessment": "Consistent 'provider/model' format throughout; minor variation in schema URLs (opencode.ai vs opencode.dev)"
        },
        "workflow_clarity": {
          "score": 4,
          "max": 5,
          "assessment": "Quick Start has numbered steps; Verify Setup is checklist; some sections could use more explicit step numbering"
        }
      }
    },
    "writing_style": {
      "total": 8,
      "max": 10,
      "breakdown": {
        "voice_and_tense": {
          "score": 3,
          "max": 4,
          "assessment": "Mostly imperative ('Set environment variables', 'Create service account'); occasional second-person ('your project')"
        },
        "objectivity": {
          "score": 3,
          "max": 3,
          "assessment": "No marketing language; purely instructional; factual descriptions of providers"
        },
        "conciseness": {
          "score": 2,
          "max": 3,
          "assessment": "Generally dense and focused; some sections could trim introductory sentences"
        }
      }
    },
    "utility": {
      "total": 17,
      "max": 20,
      "breakdown": {
        "problem_solving_power": {
          "score": 7,
          "max": 8,
          "assessment": "Addresses real need for headless LLM automation; covers 75+ providers; fills gap for non-Claude workflows"
        },
        "degrees_of_freedom": {
          "score": 4,
          "max": 5,
          "assessment": "Good balance: prescriptive for setup, flexible for model/provider choice; multi-provider configs supported"
        },
        "feedback_loops": {
          "score": 3,
          "max": 4,
          "assessment": "Verify Setup checklist present; troubleshooting sections in multiple files; verification commands provided"
        },
        "examples_and_templates": {
          "score": 3,
          "max": 3,
          "assessment": "Complete JSON config templates for each provider; code examples for subprocess integration"
        }
      }
    }
  },
  "modifiers": {
    "penalties": [
      {
        "name": "xml_tags_in_metadata",
        "points": -5
      },
      {
        "name": "deeply_nested_references",
        "points": -2
      }
    ],
    "bonuses": [
      {
        "name": "grep_friendly_structure",
        "points": 1
      },
      {
        "name": "exemplary_examples",
        "points": 2
      },
      {
        "name": "trigger_phrases_4plus",
        "points": 1
      }
    ],
    "net": -3
  },
  "final_score": 84,
  "grade": "B",
  "critical_issues": [
    {
      "rank": 1,
      "title": "Schema URL inconsistency",
      "severity": "Low",
      "location": "references/local-models.md:35",
      "pillar": "Ease of Use",
      "problem": "Schema URL differs from SKILL.md (opencode.dev vs opencode.ai)",
      "current": "\"$schema\": \"https://opencode.dev/schema/opencode.json\"",
      "suggested": "\"$schema\": \"https://opencode.ai/config.json\"",
      "impact": "+1 point"
    },
    {
      "rank": 2,
      "title": "Missing TOC in long reference files",
      "severity": "Medium",
      "location": "references/provider-config.md",
      "pillar": "PDA",
      "problem": "380-line file lacks table of contents for navigation",
      "current": "No TOC, starts directly with content",
      "suggested": "Add TOC after first heading with links to main sections",
      "impact": "+1 point"
    },
    {
      "rank": 3,
      "title": "Minor second-person usage",
      "severity": "Low",
      "location": "SKILL.md:various",
      "pillar": "Writing Style",
      "problem": "Occasional 'your' usage in otherwise imperative text",
      "current": "Set these before running OpenCode:",
      "suggested": "Set these environment variables before running OpenCode:",
      "impact": "+0.5 points"
    },
    {
      "rank": 4,
      "title": "Redundant Vertex AI section",
      "severity": "Low",
      "location": "SKILL.md:122-124",
      "pillar": "PDA",
      "problem": "Vertex AI Setup section just links to reference; could merge into Reference Guides table",
      "current": "## Vertex AI Setup\\n\\nSee [vertex-ai-setup.md]...",
      "suggested": "Remove standalone section; reference table already provides this link",
      "impact": "+0.5 points"
    }
  ],
  "recommendations": [
    "Add trigger phrases to description for discoverability",
    "Add table of contents for files over 100 lines"
  ],
  "code_quality": null,
  "grading_model": "Claude (default)",
  "grading_provider": "claude"
}

Links:


📦 Recommended: Add Universal Installer Instructions

Consider adding these installation instructions to your README.md to help users install this skill across 14+ AI coding agents:

## Installing with Skilz (Universal Installer)

The recommended way to install this skill across different AI coding agents is using the **skilz** universal installer.

### Install Skilz

```bash
pip install skilz

This skill supports Agent Skill Standard which means it supports 14 plus coding agents including Claude Code, OpenAI Codex, Cursor and Gemini.

Git URL Options


# Install for Claude Code (your home directory)
skilz install -g https://github.com/spillwavesolutions/opencode_cli

# Or from the SkillzWave marketplace
skilz install spillwavesolutions__opencode_cli__opencode_cli

Claude Code

Install to user home (available in all projects):

skilz install -g https://github.com/spillwavesolutions/opencode_cli

Install to current project only:

skilz install -g https://github.com/spillwavesolutions/opencode_cli --project

OpenCode

Install for OpenCode:

# OpenCode
skilz install https://github.com/spillwavesolutions/opencode_cli --agent opencode

Install for Codex and Gemini too

# Gemini CLI
skilz install https://github.com/spillwavesolutions/opencode_cli --agent gemini


# OpenAI Codex
skilz install https://github.com/spillwavesolutions/opencode_cli --agent codex

Project-level install:

skilz install https://github.com/spillwavesolutions/opencode_cli --project --agent codex

Install from Skillzwave Marketplace

skilz install spillwavesolutions__opencode_cli__opencode_cli --project

See this site skill Listing to see how to install this exact skill to 14+ different coding agents.

Other Supported Agents

Skilz supports 20+ coding agents including Claude Code, OpenAI Codex, OpenCode, Cursor, Gemini CLI, GitHub Copilot CLI, Windsurf, Qwen Code, Aidr, and more.

See the skill on SkillzWave for agent-specific install commands, or check the skilz-cli docs.

SkillzWave is a skill marketplace for AI agents. SpillWave (where I work) builds AI agent tools.


---

## About This Report

This evaluation uses the [Claude Skills Best Practices](https://platform.claude.com/docs/en/agents-and-tools/agent-skills/best-practices).

**Powered by:**
- [SkillzWave](https://skillzwave.ai) - Claude Skills Marketplace
- [SpillWave](https://spillwave.com) - AI Solutions

*Report generated for [spillwavesolutions/opencode_cli](https://github.com/spillwavesolutions/opencode_cli/blob/main/SKILL.md)*

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions