capability new
Create a new capability with all template files.
omnidev capability new <id>The capability ID must be lowercase kebab-case (e.g., my-capability, api-client, tasks).
Options
Section titled “Options”--path
Section titled “--path”Specify a custom output path:
omnidev capability new my-cap --path ./custom/locationOr interactively choose the path when prompted.
--programmatic
Section titled “--programmatic”Create a TypeScript capability with CLI commands:
omnidev capability new my-cap --programmaticThis adds the following files for building a programmatic capability:
package.json- Node.js package with build scriptindex.ts- TypeScript entry point with CLI command template.gitignore- Ignores capability-local.env, plusdist/andnode_modules/
Generated files
Section titled “Generated files”Standard capability
Section titled “Standard capability”capabilities/my-capability/├── capability.toml # Capability metadata├── .gitignore # Git ignore for capability-local .env├── skills/│ └── getting-started/│ └── SKILL.md # Skill template├── rules/│ └── coding-standards.md # Rule template└── hooks/ ├── hooks.toml # Hook configuration └── example-hook.sh # Example hook scriptProgrammatic capability (with --programmatic)
Section titled “Programmatic capability (with --programmatic)”capabilities/my-capability/├── capability.toml # Capability metadata├── package.json # Node.js package config├── index.ts # TypeScript entry point with CLI commands├── .gitignore # Git ignore for .env, dist/, and node_modules/├── skills/│ └── getting-started/│ └── SKILL.md # Skill template├── rules/│ └── coding-standards.md # Rule template└── hooks/ ├── hooks.toml # Hook configuration └── example-hook.sh # Example hook scriptDelete any files you don’t need after creation.
Example
Section titled “Example”Standard capability
Section titled “Standard capability”omnidev capability new api-clientOutput:
✓ Created capability: Api Client Location: capabilities/api-client
Files created: - capability.toml - skills/getting-started/SKILL.md - rules/coding-standards.md - hooks/hooks.toml - hooks/example-hook.sh - .gitignore
💡 To add this capability as a local source, run: omnidev add cap --local ./capabilities/api-clientProgrammatic capability
Section titled “Programmatic capability”omnidev capability new my-cli --programmaticOutput:
✓ Created capability: My Cli Location: capabilities/my-cli
Files created: - capability.toml - skills/getting-started/SKILL.md - rules/coding-standards.md - hooks/hooks.toml - hooks/example-hook.sh - package.json - index.ts - .gitignore
💡 To build and use this capability: cd capabilities/my-cli npm install && npm run build cd - omnidev add cap --local ./capabilities/my-cliWorkflow
Section titled “Workflow”Standard capability
Section titled “Standard capability”-
Create a new capability:
Terminal window omnidev capability new my-cap -
Add it as a local source:
Terminal window omnidev add cap --local ./capabilities/my-cap -
The capability is now tracked in
omni.tomland synced to your agents.
Programmatic capability
Section titled “Programmatic capability”-
Create a new programmatic capability:
Terminal window omnidev capability new my-cli --programmatic -
Install dependencies and build:
Terminal window cd capabilities/my-clinpm install && npm run buildcd - -
Add it as a local source:
Terminal window omnidev add cap --local ./capabilities/my-cli -
Run
omnidev syncto make the CLI commands available:Terminal window omnidev syncomnidev my-cli # Run your new command!
Standalone CLI
Section titled “Standalone CLI”You can also use the @omnidev-ai/capability package directly to create capabilities anywhere (not just in OmniDev projects):
npx @omnidev-ai/capability new my-cap --programmaticAnd build them with:
cd my-capnpm installnpx @omnidev-ai/capability buildFor a complete guide on capability development, see Creating Capabilities.