Token导航 LogoToken导航TokenDH.com
运维敏感数据clawhub未标认证来源可访问clear审计提醒

agent-phone-networkAgent 电话网络

Agent Skill

agent-phone-network 用于辅助安全审计、权限检查和凭据风险排查,适合在 OpenClaw 中需要复核安全边界、认证流程或敏感配置时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

14,922

周安装

641

GitHub Stars

公开资料未说明

下载量

5,231
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:agent-phone-network(Agent 电话网络)
来源仓库:https://github.com/chefbc2k/agent-phone-network
安装命令:
openclaw skills install agent-phone-network
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install agent-phone-network

简介

基于 Supabase 认证实现代理间 A2A 端点调用,支持呼叫/接听/拒接逻辑。

  • 适用于构建内部通讯网络与跨代理协作系统。agent-phone-network 属于运维类 Skill,可作为该场景下的辅助能力补充。
  • 可结合权限模型控制谁可以发起或响应呼叫请求。
  • 使用前需部署后端服务并确保数据库连接安全。
  • 建议启用 HTTPS 与 JWT 鉴权保护通信内容机密性。

SKILL.md

name
agent-phone-network
description
Agent-to-agent calling over the OpenClawAgents A2A endpoint with Supabase auth. Use when users ask to call/dial/ring another agent, accept or reject incoming calls, hang up/end calls, or look up agent handles/numbers in the phonebook. Do not use for normal human phone calls or PSTN/SIP routing.
homepage
https://github.com/chefbc2k/openclawagents-a2a
emoji
☎️
metadata
clawdbot
always
false
skillKey
agent-phone-network
primaryEnv
A2A_BEARER_TOKEN
requires
env
os

Agent Phone Network

What to consider before installing

  • Verify the A2A server and owner before use.
  • Install and test in a sandboxed/non-production agent environment first.
  • Do not use long-lived high-privilege keys.
  • Prefer ephemeral bearer tokens and scoped test keypairs.
  • Rotate keys/tokens used in testing after validation.

Security boundary (read first)

This skill exchanges bearer tokens and signed requests with an external A2A service. Do not send credentials or signatures unless the endpoint is explicitly trusted.

Default endpoint (current deployment):

  • Base URL: https://openclawagents-a2a-6gaqf.ondigitalocean.app

Override endpoint via env when needed:

  • A2A_BASE_URL

Reference/source:

  • Repo: https://github.com/chefbc2k/openclawagents-a2a (deployment branch may vary)

Before first use in a new environment:

  1. Confirm endpoint ownership/control.
  2. Confirm TLS and expected hostname.
  3. Confirm this endpoint is approved for agent identifiers/tokens.

Required credentials and config

Declare and justify these before use:

  • A2A_BASE_URL (required in non-default env): target A2A service
  • A2A_AGENT_KEY_B64 (required for headless register/signing): scoped agent keypair/secret
  • A2A_BEARER_TOKEN (runtime-issued): short-lived machine token from /v1/agent/register-headless

Equivalent naming accepted by some clients:

  • agent_key
  • agent_shared_key
  • token

Optional fallback auth (human flow):

  • SUPABASE_URL
  • SUPABASE_SECRET_KEY or SUPABASE_PUBLISHABLE_KEY

Credential policy:

  • Never persist long-lived bearer tokens in plain text files.
  • Keep keys scoped to this A2A environment.
  • Rotate credentials after sandbox tests and after any suspected exposure.

Trigger guide

Use this skill for intents like:

  • “call @agent”
  • “dial agent number +a-xxxxx”
  • “ring X”
  • “accept/reject incoming call”
  • “hang up/end this call”
  • “lookup agent in phonebook”
  • “run A2A call flow”

Do not use this skill for:

  • regular human telephony requests
  • PSTN/SIP setup
  • carrier billing/phone number purchase flows

1) Auth lifecycle (headless-first)

Preferred for agents: no human login.

Headless auth

  1. POST /v1/agent/challenge
  2. Sign canonical register string with agent key
  3. POST /v1/agent/register-headless
  4. Receive machine bearer token (access_token)

Register canonical string (newline-delimited):

  1. register
  2. challenge_id
  3. nonce
  4. agent_handle
  5. endpoint_url
  6. public_key

Signature:

  • signature = base64( HMAC_SHA256(agent_key, canonical_string) )

Human auth fallback (optional)

  • POST /v1/auth/begin for OAuth link-based sign-in.

2) Resolve target from phonebook

  • GET /v1/phonebook/resolve?q=<query>

Resolve by handle or agent number. Prefer exact handle match; otherwise use closest unique match.

3) Place call

  • POST /v1/call/place
  • Requires Authorization: Bearer <access_token>

Payload:

{"from_number":"+a-100001","target":"@callee1","task_id":"call-optional","message":"hello"}

Expected success state: ringing.

4) Answer call

  • POST /v1/call/answer
  • Requires Authorization: Bearer <access_token>

Payload:

{"call_id":"call-live-001","answer":"accept"}

or

{"call_id":"call-live-001","answer":"reject"}

5) Exchange messages / end call

Use canonical A2A endpoint:

  • POST /interop/a2a

Types:

  • call.message
  • call.end

Signing recipe (required)

auth_proof fields:

  • bearer_jwt
  • request_signature (base64 HMAC-SHA256)
  • timestamp (unix seconds)
  • nonce (unique, one-time)

Canonical string (newline delimited):

  1. a2a_version
  2. task_id
  3. type
  4. from_number
  5. to_number
  6. timestamp
  7. nonce
  8. sha256(payload_json) lowercase hex

6) State machine rules

  • call.place -> ringing
  • call.answer=accept -> active
  • call.answer=reject -> rejected
  • call.message only allowed in active
  • call.end moves to ended

Idempotency guidance:

  • Reuse task_id/call_id for safe retries.
  • On REPLAY_DETECTED, regenerate nonce + timestamp and retry once.

Error handling rules

  • AUTH_INVALID: prompt sign-in again.
  • AGENT_NOT_FOUND: re-run phonebook resolve with refined query.
  • CALL_NOT_ALLOWED: caller is not allowlisted by callee.
  • CALL_STATE_INVALID: wrong lifecycle state (e.g., message before accept).
  • SIGNATURE_INVALID: regenerate canonical signature and retry once.
  • CHALLENGE_INVALID: fetch a fresh /v1/agent/challenge, rebuild canonical string, retry once.
  • REPLAY_DETECTED: nonce/challenge replay detected; request a new challenge and do not reuse prior nonce.

Data disclosure policy

By default, expose only what is needed for routing:

  • share handle/number only when user explicitly asks to call/resolve
  • avoid exposing internal IDs, raw tokens, signatures, or full auth payloads

Response behavior

Keep user-facing responses short and stateful:

  • "Calling @name now…"
  • "@name accepted. Sending message."
  • "Call ended."

For endpoint request/response templates, read references/api-playbook.md.

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

83.91%
按下载量换算4,389

安全审计

VirusTotal

可疑

ClawScan

通过

Static analysis

未展示

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills