Hubify/Docs/API
Hubify Docs

hubify hub

Manage .hub manifest files

hubify hub

Commands for working with .hub manifest files.

Usage

hubify hub <subcommand> [path] [options]

Subcommands

CommandDescription
initCreate a new .hub manifest
validateValidate a .hub file
updateUpdate manifest hashes
infoDisplay manifest info
reportSubmit learnings for a local skill
evolveCheck evolution status

Examples

Initialize New Manifest

hubify hub init

Interactive wizard:

Creating new .hub manifest...

? Skill name: my-custom-skill
? Category: coding
? Brief description: A custom coding skill
? Platform support:
  ✓ claude-code
  ✓ cursor
  ✓ windsurf

Created: .hub

Next steps:
  1. Edit the prompt section
  2. Validate: hubify hub validate
  3. Publish: hubify publish .

Initialize with Defaults

hubify hub init --name my-skill --category coding

Validate Manifest

hubify hub validate ./my-skill

Output:

Validating my-skill...

  ✓ Valid YAML syntax
  ✓ Required fields present
  ✓ Name follows conventions
  ✓ Version is valid semver
  ✓ Category is valid
  ✓ Prompt is non-empty

Validation passed!

Validation Errors

hubify hub validate ./broken-skill

Output:

Validating broken-skill...

  ✗ Missing required field: version
  ✗ Invalid category: "programing" (did you mean "coding"?)
  ✓ Prompt is non-empty

2 errors found. Fix and re-validate.

Display Info

hubify hub info ./my-skill

Output:

Skill Info: my-skill

  Name:        my-skill
  Version:     1.0.0
  Category:    coding
  Author:      @yourusername

  Description:
    A custom coding skill for specific patterns

  Platforms:
    - claude-code
    - cursor
    - windsurf

  Use Cases:
    - Pattern implementation
    - Code generation
    - Review assistance

  Prompt:
    2,456 characters
    SHA-256: abc123...

  Examples: 3

  Dependencies:
    requires: none
    extends: base-coding-skill

Update Hashes

hubify hub update ./my-skill

Updates content hashes for integrity verification:

Updating hashes for my-skill...

  prompt.md:    abc123... → def456...
  examples/1:   unchanged
  examples/2:   ghi789... → jkl012...

Hashes updated in .hub

Report from Local Skill

hubify hub report ./my-skill --success

Reports execution results for a local (unpublished) skill.

Check Evolution Status

hubify hub evolve ./my-skill

Output:

Evolution Status: my-skill (local)

  Status: Not published

  To enable evolution:
    1. Publish: hubify publish ./my-skill
    2. Gather executions from the community
    3. View status: hubify evolve status my-skill

Manifest Structure

The .hub file supports:

# Identity
name: skill-name
version: 1.0.0
author: "@username"

# Metadata
category: coding
description: Brief description
license: MIT

# Content
prompt: |
  Inline prompt...
# OR
prompt_file: ./prompt.md

# Targeting
platforms:
  - claude-code
  - cursor
  - windsurf

use_cases:
  - Use case 1
  - Use case 2

tags:
  - tag1
  - tag2

# Dependencies
dependencies:
  requires: []
  extends: []
  integrates_with: []

# Evolution settings
evolution:
  min_executions: 100
  confidence_threshold: 0.85

# Examples
examples:
  - title: Example 1
    prompt: User prompt
    expected: Expected outcome

Validation Rules

Name

  • Lowercase alphanumeric with hyphens
  • 3-50 characters
  • Unique in registry

Version

  • Valid semver (X.Y.Z)
  • Greater than existing versions

Category

One of: coding, workflow, documentation, testing, security, devops, research

Prompt

  • Required (inline or file reference)
  • Non-empty

See Also