neurakit
v1.0.0
Published
Universal Skill Package Manager for AI Agents
Maintainers
Readme
NeuraKit
Overview
NeuraKit is a CLI tool for managing AI Skills — reusable, versioned packages that extend the capabilities of AI agents. Think of it as npm or cargo, but for AI skills.
Skills can be installed from:
- Registry — A local
registry.jsonfile that maps skill names to sources - Git repositories — Directly from any git URL (GitHub, GitLab, Gitee, etc.)
- Built-in paths — Skills bundled within a registry repository
- Local paths — For development and testing
Installation
From npm (future)
npm install -g neurakitFrom Source
git clone https://github.com/nexuskit/nexuskit.git
cd neurakit
pnpm install
pnpm build
pnpm link --globalRequirements
- Node.js >= 22.0.0
- pnpm (recommended)
Quick Start
# Initialize NeuraKit in your project
neurakit init
# Install a skill from the registry
neurakit add frontend-design
# Install multiple skills
neurakit add frontend-design code-review react-expert
# Install from a Git repository
neurakit add https://github.com/org/skills.git --skill frontend-design
# Install all skills from a registry repository
neurakit add https://gitee.com/xiyuan/skills.git --all
# List installed skills
neurakit list
# Search the registry
neurakit search react
# Update all skills
neurakit update
# Update a specific skill
neurakit update frontend-design
# Remove a skill
neurakit remove frontend-design
# Validate and prepare a skill for publishing
neurakit publishCommands
init
Initialize NeuraKit in the current directory. Creates the .skills/ directory structure.
neurakit initCreates:
.skills/
├── registry.json # Local skill registry
├── installed.json # Tracks installed skills
└── skills/ # Installed skill filesadd <skills...>
Install one or more skills.
# From registry
neurakit add frontend-design
# Multiple skills
neurakit add frontend-design code-review
# From a Git URL with explicit name
neurakit add https://github.com/org/skills.git --skill frontend-design
# Install all from a registry repo
neurakit add https://gitee.com/xiyuan/skills.git --allOptions:
--skill <name>— Specify skill name when installing from URL--all— Install all skills from a registry repository
list
Display all installed skills in a formatted table.
neurakit list
neurakit lssearch <query>
Search the registry for skills matching a query.
neurakit search react
neurakit search designMatches against skill name, description, and tags.
update [skills...]
Update installed skills.
# Update all skills
neurakit update
# Update specific skills
neurakit update frontend-design code-reviewremove <skills...>
Remove installed skills.
neurakit remove frontend-design
neurakit rm frontend-designpublish
Validate the current directory as a skill and prepare it for publishing.
neurakit publish
# Dry run — validate only
neurakit publish --dry-runSkill Registry
The registry is defined in .skills/registry.json:
{
"frontend-design": {
"type": "git",
"repo": "https://gitee.com/xiyuan/frontend-design.git",
"description": "Frontend Design Skill",
"tags": ["frontend", "design"]
},
"code-review": {
"type": "git",
"repo": "https://gitee.com/xiyuan/code-review.git"
},
"prompt-template": {
"type": "builtin",
"path": "builtin/prompt-template"
},
"dev-skill": {
"type": "local",
"path": "./skills/dev-skill"
}
}Skill Types
| Type | Description | Update Behavior |
|------|-------------|----------------|
| git | Clone from a git repository | git pull |
| builtin | Copy from a path within .skills/ | Re-copy files |
| local | Copy from a local filesystem path | Re-copy files |
Skill Manifest
Every skill must include a skill.json manifest at its root:
{
"name": "frontend-design",
"version": "1.0.0",
"description": "Frontend Design Skill",
"author": "xiyuan",
"tags": ["frontend", "design"],
"entry": "README.md"
}Fields
| Field | Type | Required | Description |
|-------|------|----------|-------------|
| name | string | ✅ | Unique skill identifier |
| version | string | ✅ | Semantic version (x.y.z) |
| description | string | | Brief description |
| author | string | | Author name |
| tags | string[] | | Categorization tags |
| entry | string | ✅ | Main entry point file (default: README.md) |
| dependencies | object | | Skill dependencies (future) |
Project Structure
neurakit/
├── src/
│ ├── commands/ # CLI command implementations
│ │ ├── add.ts
│ │ ├── remove.ts
│ │ ├── update.ts
│ │ ├── list.ts
│ │ ├── search.ts
│ │ ├── publish.ts
│ │ └── init.ts
│ ├── registry/ # Registry loading and resolution
│ │ ├── registry.ts
│ │ └── skill-loader.ts
│ ├── installers/ # Skill installation strategies
│ │ ├── git-installer.ts
│ │ ├── builtin-installer.ts
│ │ └── local-installer.ts
│ ├── utils/ # Shared utilities
│ │ ├── logger.ts
│ │ ├── config.ts
│ │ ├── file.ts
│ │ └── git.ts
│ ├── types/ # TypeScript types and Zod schemas
│ │ └── index.ts
│ └── cli.ts # CLI entry point
├── tests/ # Vitest test suite
├── package.json
├── tsconfig.json
└── README.mdDevelopment
# Install dependencies
pnpm install
# Run in development mode
pnpm dev
# Build
pnpm build
# Run tests
pnpm test
# Run tests with coverage
pnpm test:coverage
# Lint
pnpm lint
# Format
pnpm formatFuture Roadmap
- Skill Dependencies — Install dependent skills automatically
- Semantic Versioning — Version ranges and constraint resolution
- MCP Integration — Model Context Protocol support
- Remote Registry Service — HTTP-based registry API
- Marketplace — Community skill ratings and reviews
- Authentication — Token-based auth for private registries
- Skill Categories — Hierarchical skill organization
License
MIT © NeuraKit Team
