Skip to content

JikiME-ADK Skill System ​

Documentation for the skill system structure and management tools in JikiME-ADK.

Overview ​

Skills are modules that provide Claude Code with specialized knowledge for specific domains or tasks. They use tokens efficiently through the Progressive Disclosure pattern.

Skill Structure ​

templates/.claude/skills/
├── _template/                    # Skill template
│   ├── SKILL.md
│   └── tests/
│       ├── README.md
│       └── examples.yaml
├── jikime-lang-typescript/       # Language skill
│   └── SKILL.md
├── jikime-domain-frontend/       # Domain skill
│   └── SKILL.md
├── jikime-workflow-spec/         # Workflow skill
│   └── SKILL.md
└── ...

Skill Naming Convention ​

jikime-{domain}-{name}
DomainDescriptionExample
langProgramming languagejikime-lang-typescript
domainDevelopment domainjikime-domain-frontend
workflowWorkflowjikime-workflow-spec
platformPlatform/Servicejikime-platform-vercel
frameworkFrameworkjikime-framework-nextjs@16
libraryLibraryjikime-library-zod
foundationCore foundationjikime-foundation-core
marketingMarketingjikime-marketing-seo
toolTooljikime-tool-ast-grep
migrationMigrationjikime-migration-to-nextjs

SKILL.md Structure ​

yaml
---
name: jikime-example-skill
description: Brief description of the skill
version: 1.0.0
tags:
  - example
  - tutorial

# Progressive Disclosure settings
progressive_disclosure:
  enabled: true
  level1_tokens: ~100
  level2_tokens: ~5000

# Trigger conditions
triggers:
  keywords: ["example", "example"]
  phases: ["plan", "run"]
  agents: ["manager-spec"]
  languages: ["typescript"]
---

# Skill body

Write the detailed content of the skill here.

Skill CLI (Discovery) ​

You can explore and search for skills using the jikime-adk skill command.

List Skills (list) ​

bash
# List all skills
jikime-adk skill list

# Filter by tag
jikime-adk skill list --tag framework

# Filter by phase (plan, run, sync)
jikime-adk skill list --phase run

# Filter by agent
jikime-adk skill list --agent frontend

# Filter by language
jikime-adk skill list --language typescript

# Specify output format
jikime-adk skill list --format json      # JSON format
jikime-adk skill list --format compact   # Compact format
jikime-adk skill list --format table     # Table format (default)
bash
# Search by text
jikime-adk skill search nextjs
jikime-adk skill search "react components" --limit 5

# Search by tags (comma-separated)
jikime-adk skill search --tags framework,nextjs

# Combined filtering
jikime-adk skill search --phases run --languages typescript
jikime-adk skill search --agents frontend,backend --limit 10

Search result example:

Search Results (3 found):
--------------------------------------------------------------------------------
1. jikime-migration-to-nextjs (score: 95.0)
   Legacy to Next.js 16 migration workflow specialist...
   Tags: migration, nextjs, react, vue, angular
   Keywords: migrate, migration, nextjs

2. jikime-framework-nextjs@16 (score: 95.0)
   Next.js 16 upgrade guide with breaking changes...
   Tags: framework, nextjs, version, use-cache
   Keywords: nextjs 16, next.js 16

Finds related skills based on shared tags, phases, agents, and languages.

bash
# Find related skills
jikime-adk skill related jikime-lang-typescript

# Limit number of results
jikime-adk skill related jikime-platform-vercel --limit 5

Skill Details (info) ​

bash
# View metadata
jikime-adk skill info jikime-lang-typescript

# Include markdown body
jikime-adk skill info jikime-platform-vercel --body

CLI Options Summary ​

CommandMain OptionsDescription
list--tag, --phase, --agent, --language, --formatList and filter skills
search--tags, --phases, --agents, --languages, --limitSearch skills
related--limitFind related skills
info--bodySkill details

Skill Management Tools (Scripts) ​

1. Generate Skill Catalog ​

Scans metadata from all skills and generates a catalog.

bash
python3 scripts/generate_skill_catalog.py

Generated files:

  • skills-catalog.yaml - Machine-readable catalog
  • docs/skills-catalog.md - Documentation catalog

When should you run it?

SituationRegeneration Required
Adding a new skillYes
Modifying skill metadata (frontmatter)Yes
Modifying only skill bodyNo
Deleting a skillYes

2. Validate Skill Metadata ​

Validates that all skill frontmatter conforms to the schema.

bash
# Validate all skills
python3 scripts/validate_skills.py

# Validate specific skill only
python3 scripts/validate_skills.py --skill jikime-marketing-seo

# Verbose output
python3 scripts/validate_skills.py --verbose

Validation items:

  • Required fields: name, description, version
  • Name pattern: jikime-{domain}-{name} format
  • Version format: semver (framework skills are exceptions)
  • Trigger settings: phases, keywords validity

3. Test Skills ​

Validates skill test examples and trigger settings.

bash
# Test all skills
python3 scripts/test_skills.py

# Test specific skill only
python3 scripts/test_skills.py --skill jikime-marketing-seo

# Verbose output
python3 scripts/test_skills.py --verbose

Adding a New Skill ​

1. Copy Template ​

bash
cp -r templates/.claude/skills/_template templates/.claude/skills/jikime-{domain}-{name}

2. Write SKILL.md ​

Refer to _template/SKILL.md to write the frontmatter and body.

3. Validate ​

bash
python3 scripts/validate_skills.py --skill jikime-{domain}-{name}

4. Update Catalog ​

bash
python3 scripts/generate_skill_catalog.py

Writing Skill Tests ​

Test File Structure ​

skills/jikime-example/
├── SKILL.md
└── tests/
    └── examples.yaml

examples.yaml Format ​

yaml
# Skill test examples
name: jikime-example-skill
version: 1.0.0

# Trigger keywords (same as SKILL.md or defined for testing)
keywords:
  - example
  - example

# Test cases (test_N_name, test_N_input, test_N_expected format)
test_1_name: Basic test
test_1_input: Show me an example
test_1_expected: Example explanation, code sample

test_2_name: English input
test_2_input: Show me an example
test_2_expected: Example explanation

# Trigger validation
should_trigger:
  - Write example code
  - example usage

should_not_trigger:
  - Unrelated topic
  - Other skill keywords

Test Validation Items ​

Validation TypeDescription
Test structureWhether both test_N_input and test_N_expected exist
Trigger checkWhether input triggers keywords
should_triggerWhether inputs that should trigger actually trigger
should_not_triggerWhether inputs that should not trigger do not trigger
FileDescription
scripts/generate_skill_catalog.pyCatalog generation script
scripts/validate_skills.pyMetadata validation script
scripts/test_skills.pyTest execution script
schemas/skill-frontmatter.schema.jsonFrontmatter JSON schema
skills-catalog.yamlGenerated catalog (YAML)
docs/skills-catalog.mdGenerated catalog (Markdown)

Version Management Policy ​

Semantic Versioning (SemVer) ​

Skills follow Semantic Versioning.

MAJOR.MINOR.PATCH
Version ChangeWhen to increment?Example
MAJORBreaking change (compatibility broken)Major changes/deletions to trigger keywords, removal of required sections
MINORNew feature added (backward compatible)Adding new patterns, expanding examples, adding sections
PATCHBug fix, typo correctionTypo fixes, link fixes, clarifying descriptions

Exception: Framework Version Skills ​

jikime-framework-* skills use the target framework version in the version field.

yaml
# jikime-framework-nextjs@16/SKILL.md
name: jikime-framework-nextjs@16
version: "16"  # Means Next.js version 16

Version Update Guidelines ​

1. PATCH Update (1.0.0 -> 1.0.1) ​

yaml
# Before change
version: 1.0.0

# After change
version: 1.0.1

Applicable cases:

  • Typo fixes
  • Improving description text
  • Fixing broken links
  • Fixing code example errors

2. MINOR Update (1.0.0 -> 1.1.0) ​

yaml
# Before change
version: 1.0.0

# After change
version: 1.1.0

Applicable cases:

  • Adding new patterns/examples
  • Adding new sections
  • Adding trigger keywords (keeping existing ones)
  • Adding Works Well With skills

3. MAJOR Update (1.0.0 -> 2.0.0) ​

yaml
# Before change
version: 1.0.0

# After change
version: 2.0.0

Applicable cases:

  • Major changes/deletions to trigger keywords
  • Structural changes to required sections
  • Changes to skill purpose/scope
  • Merging/splitting with other skills

Inter-Skill Dependencies ​

Works Well With Section ​

Relationships between skills are documented in the ## Works Well With section.

markdown
## Works Well With

- **jikime-lang-typescript**: TypeScript type definition patterns
- **jikime-platform-vercel**: Deployment optimization

Notes:

  • Dependencies are documentation references, not automatically loaded
  • Required skills must be explicitly loaded with Skill("skill-name")
  • Be careful of circular dependencies (A -> B -> A)

Dependency Management Principles ​

PrincipleDescription
Explicit loadingLoad only required skills explicitly (token efficiency)
Loose couplingDesign to work independently without other skills
DocumentationRelated skills are specified in Works Well With

Progressive Disclosure Token Guidelines ​

Token RangeRecommended Use
~2000General skills (lang, library)
~3000-5000Complex skills (foundation, workflow)
~5000+Large skills (consider splitting)

Recommendations:

  • Keep to ~2000-3000 tokens if possible
  • Consider skill splitting if 5000+ tokens
  • Quick Reference section should contain only essential content

Reference ​

  • All scripts use only Python standard library (no external dependencies)
  • Skill catalog currently includes 59 skills
  • Progressive Disclosure improves token efficiency by 67%+

Released under the MIT License.