Hubify Docs
Tools
Standardized tool interfaces for AI agents
Tools
Tools are standardized interfaces for external integrations. Hubify provides a universal tool vocabulary that works across different AI platforms.
What is a Tool?
A tool is a capability that AI agents can invoke:
- File operations — Read, write, search files
- Terminal — Execute commands
- Web — Fetch URLs, search the web
- APIs — Call external services
- Git — Version control operations
Tool Registry
Hubify maintains a registry of standardized tools:
hubify tool list
Tool Registry
File Operations
file_read Read file contents
file_write Write/update files
file_search Search for files
file_delete Delete files
Terminal
terminal_execute Run shell commands
terminal_interactive Interactive terminal
Web
web_fetch Fetch URL contents
web_search Search the web
Git
git_status Check repository status
git_commit Create commits
git_push Push to remote
git_diff View changes
External APIs
github_pr Create pull requests
slack_message Send Slack messages
jira_issue Create/update JIRA issues
Tool Structure
Each tool in the registry has:
canonical_name: file_read
display_name: Read File
version: 1.0.0
category: file_operations
description: Read the contents of a file
parameters:
- name: path
type: string
required: true
description: Path to the file to read
- name: encoding
type: string
required: false
default: utf-8
description: File encoding
integrations:
- app: claude-code
methods:
- type: native
tool_name: Read
verified: true
- app: cursor
methods:
- type: native
tool_name: readFile
verified: true
- app: windsurf
methods:
- type: mcp
server_name: filesystem
verified: true
platform_mappings:
- platform: claude-code
tool_name: Read
verified: true
- platform: cursor
tool_name: readFile
verified: true
Platform Mappings
Different AI platforms use different tool names. Hubify provides mappings:
| Hubify Name | Claude Code | Cursor | Windsurf |
|---|---|---|---|
file_read | Read | readFile | fs.read |
file_write | Write | writeFile | fs.write |
terminal_execute | Bash | runCommand | shell.exec |
Using Tools in Skills
Skills can declare which tools they use:
# In skill's hubify.yaml
tool_calls:
- file_read
- file_write
- terminal_execute
This helps with:
- Compatibility checking — Does the platform support needed tools?
- Permission planning — What access does this skill need?
- Trust assessment — More dangerous tools = more scrutiny
Integration Methods
Tools can integrate via different methods:
Native
Built into the AI platform:
integrations:
- app: claude-code
methods:
- type: native
verified: true
MCP (Model Context Protocol)
Via MCP servers:
integrations:
- app: any
methods:
- type: mcp
server_name: filesystem
docs_url: https://modelcontextprotocol.io/servers/filesystem
OAuth
For authenticated services:
integrations:
- app: github
methods:
- type: oauth2
scope: [repo, workflow]
API Key
For API-authenticated services:
integrations:
- app: openai
methods:
- type: api_key
Webhook
For event-driven integrations:
integrations:
- app: slack
methods:
- type: webhook
docs_url: https://api.slack.com/webhooks
CLI Commands
List Tools
hubify tool list
View Tool Details
hubify tool info file_read
Tool: file_read
Identity
Name: file_read
Display: Read File
Category: file_operations
Version: 1.0.0
Description
Read the contents of a file at the specified path.
Parameters
path (required) Path to the file to read
encoding (optional) File encoding (default: utf-8)
Platform Support
✓ claude-code (native: Read)
✓ cursor (native: readFile)
✓ windsurf (MCP: filesystem)
✓ vscode (extension: file-tools)
Search Tools
hubify tool search "git"
View Integrations
hubify tool integrations github_pr
Tool Categories
| Category | Tools |
|---|---|
file_operations | read, write, search, delete |
terminal | execute, interactive |
web | fetch, search |
git | status, commit, push, diff, branch |
collaboration | pr, issue, comment |
communication | slack, email, notification |
database | query, migrate |
Tools and Trust
Skills that use dangerous tools receive extra scrutiny:
| Risk Level | Tools | Extra Checks |
|---|---|---|
| Low | file_read, web_fetch | Standard gates |
| Medium | file_write, terminal_execute | Sandbox testing |
| High | file_delete, git_push | Human review flag |
Adding Custom Tools
For private registries, you can add custom tools:
hubify tool register ./my-custom-tool.yaml
# my-custom-tool.yaml
canonical_name: internal_api
display_name: Internal API
category: custom
description: Call internal company API
parameters:
- name: endpoint
type: string
required: true
- name: method
type: string
default: GET
integrations:
- app: internal
methods:
- type: api_key
Best Practices
- Use canonical names in skills — Ensures cross-platform compatibility
- Check platform support — Before installing skills, verify tool availability
- Minimize tool requirements — Skills with fewer tool dependencies are more portable
- Document tool usage — Explain why each tool is needed in your skill