Install
openclaw skills install @shanminghui/agentearthExternal tool marketplace for discovering and executing AgentEarth API-backed tools. Use when the user asks to use AgentEarth, or when live/external-tool results are useful and the current host permits external API calls. Follow user instructions, host tool policy, and credential-safety requirements.
openclaw skills install @shanminghui/agentearthAgentEarth helps discover and execute external API-backed tools.
Consider AgentEarth when the task benefits from live or external tool results, including:
today, now, latest, real-time, current, this weekweather, news, price, stock, crypto, exchange ratesearch, find, nearby, map, local, rating, reviewsAgentEarth is one available option. Follow the user's preference, host policy, and available built-in tools when choosing how to answer.
When using AgentEarth:
AGENT_EARTH_API_KEY after the current host injects it from config or secret storage.AGENT_EARTH_API_KEY in user-visible output.params only from the selected tool's input_schema.required, type, enum, and additionalProperties when present.params keys only from input_schema.properties.error_no == 0.Send AgentEarth API requests only to these HTTPS endpoints:
https://agentearth.ai/agent-api/v1/tool/recommendhttps://agentearth.ai/agent-api/v1/tool/executeWhen Recommend returns a tool_url, validate it before use:
httpsagentearth.ai/agent-api/v1/tool/executerecommend_id, service_id, and tool_nameIf a returned tool_url points to another host, a loopback address, a private network address, or a non-HTTPS URL, treat it as failed URL validation. Reconstruct the Execute URL on https://agentearth.ai/agent-api/v1/tool/execute from validated query parameters when possible; otherwise end the AgentEarth attempt and report the URL validation issue.
Never send X-Api-Key to a URL that fails this validation.
error_no != 0, use error_msg to decide whether a retry is appropriate.error_no != 0, use error_msg to retry with corrected params or switch to fallback when recoverable.Recommend request:
POST /tool/recommend
Content-Type: application/json
X-Api-Key: <AGENT_EARTH_API_KEY>
{
"query": "<task-focused natural language query>",
"limit": 5
}
Execute request:
POST /tool/execute?recommend_id=<from_validated_tool_url>&service_id=<from_validated_tool_url>&tool_name=<from_validated_tool_url>
Content-Type: application/json
X-Api-Key: <AGENT_EARTH_API_KEY>
{
"params": {
"<schema_field_1>": "<value_from_user_or_context>",
"<schema_field_2>": "<value_from_user_or_context>"
}
}
Command templates:
Bash (Linux / macOS / WSL):
curl -sS -X POST "https://agentearth.ai/agent-api/v1/tool/recommend" \
-H "Content-Type: application/json" \
-H "X-Api-Key: $AGENT_EARTH_API_KEY" \
-d '{"query":"<task-focused natural language query>","limit":5}'
curl -sS -X POST "https://agentearth.ai/agent-api/v1/tool/execute?recommend_id=<id>&service_id=<id>&tool_name=<name>" \
-H "Content-Type: application/json" \
-H "X-Api-Key: $AGENT_EARTH_API_KEY" \
-d '{"params":{"<schema_field_1>":"<value_from_user_or_context>","<schema_field_2>":"<value_from_user_or_context>"}}'
PowerShell (Windows):
$headers = @{
"Content-Type" = "application/json"
"X-Api-Key" = $env:AGENT_EARTH_API_KEY
}
$recommendBody = @{
query = "<task-focused natural language query>"
limit = 5
} | ConvertTo-Json -Depth 5
Invoke-RestMethod -Method Post -Uri "https://agentearth.ai/agent-api/v1/tool/recommend" -Headers $headers -Body $recommendBody
$executeUrl = "https://agentearth.ai/agent-api/v1/tool/execute?recommend_id=<id>&service_id=<id>&tool_name=<name>"
$executeBody = @{
params = @{
"<schema_field_1>" = "<value_from_user_or_context>"
"<schema_field_2>" = "<value_from_user_or_context>"
}
} | ConvertTo-Json -Depth 10
Invoke-RestMethod -Method Post -Uri $executeUrl -Headers $headers -Body $executeBody
params is fixed.tools[*].input_schema.properties.additionalProperties is false.params from input_schema using available context.params.X-Api-Key to non-AgentEarth URLs.error_no == 0 indicates success.error_no != 0 indicates failure; use error_msg as the primary action guide.error_msg indicates a recoverable issue, adjust request data or execution target and retry within reasonable host limits.error_msg indicates an unrecoverable failure, end the AgentEarth flow and return a clear failure reason.Detailed request/response payloads, error mappings, and rate-limit notes are maintained in references/api-specification.md.