@gami-ai/gamihub
v0.1.6
Published
Manage and install skills, plugins, and MCP servers for AI coding agents
Downloads
265
Maintainers
Readme
GamiHub CLI
GamiHub CLI is the official command-line client for GamiHub. It searches, installs, manages, and publishes agent artifacts:
skill- packages with a rootSKILL.mdplugin- packages with.codex-plugin/plugin.jsonor.claude-plugin/plugin.jsonmcp- packages with a root.mcp.json
The npm package is @gami-ai/gamihub. It exposes gamihub as the primary
binary and keeps skillhub as a compatibility alias.
Installation
npm install -g @gami-ai/gamihub
npx @gami-ai/gamihub@latest version
bun add -g @gami-ai/gamihubQuick Start
gamihub login --token sk_xxx --registry https://skillhub.adakamicorp.id
gamihub search pdf --type skill
gamihub install pdf-parser --type skill --agent codex
gamihub search gami --type plugin
gamihub install gami-workflow --type plugin --agent codex
gamihub install workflow-mcp --type mcp --agent claude-code --dry-run
gamihub listRegistry Configuration
Registry resolution priority:
--registry <url>GAMIHUB_REGISTRYregistryin~/.skillhub/config.json- Default
https://skillhub.adakamicorp.id
gamihub search pdf --registry https://skillhub.example.com
export GAMIHUB_REGISTRY=https://skillhub.example.comPowerShell:
$env:GAMIHUB_REGISTRY="https://skillhub.example.com"SKILLHUB_REGISTRY is still accepted as a legacy compatibility fallback.
Authentication
Token resolution priority:
--token <token>SKILLHUB_TOKEN- Token stored in
~/.skillhub/credentials.json
gamihub login --token sk_xxx --registry https://skillhub.example.com
gamihub whoami
gamihub logoutSearch
gamihub search pdf
gamihub search pdf --type skill
gamihub search gami --type plugin
gamihub search workflow --type mcp --limit 50
gamihub search pdf --jsonOutput format:
namespace/type/slug version summaryInstall
gamihub install pdf-parser --type skill --agent codex
gamihub install gami-workflow --type plugin --agent codex
gamihub install workflow-mcp --type mcp --agent claude-code
gamihub install pdf-parser --namespace myspace --version 1.2.0
gamihub install pdf-parser --force
gamihub install workflow-mcp --type mcp --agent codex --dry-run--type defaults to skill.
Install Target Resolution
--dirinstalls into an explicit directory and marks the target ascustom.--agentinstalls into the selected agent profile. The option can be repeated.- Without either option, the CLI scans the current project for known agent
directories. If none are found, it falls back to
<cwd>/.agents/skills/.
--dir and --agent cannot be used together.
Type-Specific Behavior
| Type | Codex behavior | Claude Code behavior |
|------|----------------|----------------------|
| skill | Extracts into .codex/skills/<slug> or ~/.codex/skills/<slug> | Extracts into .claude/skills/<slug> or ~/.claude/skills/<slug> |
| plugin | Extracts into ~/.codex/plugins/cache/gamihub/<slug>/<version> and updates ~/.codex/config.toml | Extracts under the target root and runs claude plugin install --plugin-dir <dir> |
| mcp | Extracts into ~/.codex/mcp-servers/gamihub/<slug>/<version> and updates [mcp_servers.*] from .mcp.json | Extracts under the target root and runs claude mcp add-json <name> <json> for each server |
Use --dry-run to preview filesystem and config changes. Use --force only
when replacing an existing install directory.
Local Management
gamihub list
gamihub list --agent codex
gamihub list --json
gamihub remove pdf-parser
gamihub remove pdf-parser --agent codex
gamihub doctorLocal metadata lives in ~/.skillhub/:
~/.skillhub/
├── config.json
├── credentials.json
└── inventory.jsonInstalled package directories contain .skillhub/metadata.json; the inventory
groups records by registry + namespace + type + slug.
Publish
gamihub publish ./my-skill --type skill --namespace my-team
gamihub publish ./my-plugin --type plugin --namespace my-team --visibility namespace-only
gamihub publish ./my-mcp.zip --type mcp --namespace platform --registry https://skillhub.example.comVisibility values:
public- visible to everyone with access to the registrynamespace-only- visible to namespace membersprivate- visible only to the owner and namespace admins
Private npm Registry Publish
For an internal npm registry:
cd cli
bun run build
npm login --registry https://your-company-npm.example.com/
npm publish --registry https://your-company-npm.example.com/If the registry requires scoped configuration:
npm config set @gami-ai:registry https://your-company-npm.example.com/
npm publishSelf-Update
gamihub update --check
gamihub updateThe updater uses the detected installation mode:
- npm global:
npm install -g @gami-ai/gamihub@latest - Bun global:
bun add -g @gami-ai/gamihub@latest - npx or unknown mode: prints a manual update command
Command Reference
| Command | Description |
|---------|-------------|
| gamihub help [command] | Display help |
| gamihub version [--json] | Display CLI version |
| gamihub login --token <token> [--registry <url>] [--json] | Save token and registry configuration |
| gamihub logout [--registry <url>] [--json] | Remove token for a registry |
| gamihub whoami [--registry <url>] [--token <token>] [--json] | Validate current token |
| gamihub search [query] [--type <skill|plugin|mcp>] [--limit <n>] [--registry <url>] [--json] | Search artifacts |
| gamihub install <slug> [--type <skill\|plugin\|mcp>] [--namespace <slug>] [--version <v>] [--agent <profile>] [--dir <path>] [--force] [--dry-run] [--json] | Install an artifact |
| gamihub list [--agent <profile>] [--dir <path>] [--registry <url>] [--json] | List local installs |
| gamihub remove <slug> [--agent <profile>] [--all] [--remote] [--hard] [--namespace <slug>] [--registry <url>] [--token <token>] [--json] | Remove a local or remote artifact |
| gamihub doctor [--json] | Rebuild local inventory |
| gamihub publish <path> [--type <skill\|plugin\|mcp>] [--namespace <slug>] [--visibility <v>] [--registry <url>] [--token <token>] [--json] | Publish an artifact |
| gamihub update [--check] [--json] | Check or execute self-update |
Security Notes
- Tokens are stored in
~/.skillhub/credentials.json. - On Linux and macOS, credential file permissions are set to
0600. - Tokens are not written to project-local files.
removevalidates path ownership before deleting directories.- Plugin and MCP installs may update local agent configuration; use
--dry-runbefore first-time installs.
