Skip to Content

Tools

Tools give agents access to external systems (APIs, shell, git, messaging).


List available tools

GET /api/tools Authorization: Bearer nxr_...

List builtin tools

GET /api/tools/builtin Authorization: Bearer nxr_...

Create custom tool

POST /api/tools Authorization: Bearer nxr_... Content-Type: application/json { "key": "internal-api", "name": "Internal API", "description": "Access internal company APIs", "category": "custom" }

Update tool

PATCH /api/tools/{tool_id} Authorization: Bearer nxr_... Content-Type: application/json { "description": "Updated description" }

Delete tool

DELETE /api/tools/{tool_id} Authorization: Bearer nxr_...

Tool files

Tools are file-based. Manage their definition files directly:

GET /api/tools/{tool_id}/files PUT /api/tools/{tool_id}/files/{file_path} DELETE /api/tools/{tool_id}/files/{file_path}

Export

GET /api/tools/{tool_id}/export # download as ZIP GET /api/tools/builtin/{key}/export # export a builtin tool

Built-in tools

There are ~90 builtin tools. A representative sample (each is its own key):

KeyDescription
shell_runExecute a shell command in the sandbox
file_read / file_write / file_list / file_findWorkspace file operations
git / git_clone / git_commit / git_push / git_diffGit operations
github_api / github_list_issues / github_create_prGitHub access (via GitHub App)
gitlab_api / gitlab_list_issues / gitlab_create_mrGitLab access
http_requestHardened HTTP request (SSRF allowlist)
web_search / web_scrape / url_checkWeb access
slack / discord / jira / linear / notion / pagerdutyMessaging & issue trackers
s3 / google_drive / kubernetes / databaseCloud & infra
knowledge_search / memory_manageRAG + agent memory
task_create / plan_create / agent_broadcastOrchestration
platform_create_agent / platform_create_toolLive platform management

The complete list is returned by GET /api/tools/builtin.


Model Profiles

Model profiles define reusable model selections (a provider type or provider chain + a model name) that agents reference by tag.

List profiles

GET /api/model-profiles Authorization: Bearer nxr_...

Create profile

POST /api/model-profiles Authorization: Bearer nxr_... Content-Type: application/json { "name": "Fast and cheap", "description": "Cheap model for routine work", "provider_type": "openai", "model_name": "gpt-4o-mini", "tags": ["fast", "cheap"], "priority": 0 }

Update / delete

PATCH /api/model-profiles/{profile_id} DELETE /api/model-profiles/{profile_id} Authorization: Bearer nxr_...

Resolve by tag

GET /api/model-profiles/resolve?tags=fast,cheap Authorization: Bearer nxr_...

Marketplace

Install community-contributed agents, tools, and skills.

List items

GET /api/marketplace Authorization: Bearer nxr_...

Get item details

GET /api/marketplace/{slug} Authorization: Bearer nxr_...

Install item

POST /api/marketplace/{slug}/install Authorization: Bearer nxr_...

Custom tools override builtin tools with the same key. Seed definitions are cached after first load; new custom seeds added on disk are picked up at startup (or when a marketplace import triggers a seed reload).