Skip to content
Back to skills

Register Tool

ASecurity

Register a new platform_* action as an actions_<domain>.py / handlers_<domain>.py pair in orchestrator/modules/tools/discovery/. Use when adding any new tool that agents should be able to call.

  • 47 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 29, 2026
ai-agentsgo

Security analysis

A100/100

Scanned October 4, 2026

npx -y skills add AutomatosAI/automatos-ai --skill register-tool --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Register Tool?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Register Tool
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/automatosai-register-tool/badge)](https://www.skillsdirectory.com/skills/automatosai-register-tool)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: register-tool
description: Register a new platform_* action as an actions_<domain>.py / handlers_<domain>.py pair in orchestrator/modules/tools/discovery/. Use when adding any new tool that agents should be able to call.
disable-model-invocation: true
---

# Register Platform Tool

Slash command: `/register-tool <tool_name>` (e.g. `/register-tool platform_export_workspace`)

`orchestrator/modules/tools/README.md`, section "Adding a platform action", is the current pattern: a definition in `discovery/actions_<domain>.py`, its handler in `discovery/handlers_<domain>.py`, and a test under `modules/tools/tests/`. Read it first and follow an existing pair such as `actions_blog.py` / `handlers_blog.py`.

## Before writing code

- `grep -rn "<tool_name>" orchestrator/modules/tools/discovery/` — a match means you are extending, not registering. Prefer extending an existing action over adding a near-duplicate.
- Settle the contract: the inputs, the result shape (`{"success": True, "data": ...}` or `{"success": False, "error": ...}`), the side effects, and the permission level (`requires_confirmation=True` for anything destructive).

## The description is the contract

The model picks and calls the action from its description and parameter schema alone. Say what it does, when to use it and when not to, what each parameter means and what it does not return; every enum value must be one the handler accepts. Write it plainly: no MUST/ALWAYS boosters, and no worked examples or call transcripts in the text.

## Verify

CI is the gate; nothing runs on this machine. The test goes under `modules/tools/tests/`; push and let CI run it.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…