PhoneClaw is a local AI agent framework that runs on phones and edge devices, using on-device models to understand requests and perform mobile tasks through native skills. It is for people who want an AI assistant on an iPhone or similar device with access to functions such as calendars, reminders, contacts, health data, voice, and image understanding, while optionally using web search or a Mac Gateway for selected tasks.
Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add kellyvv/PhoneClaw --skill web-searchgit clone --depth 1 https://github.com/kellyvv/PhoneClawWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/kellyvv/phoneclaw/web-search)<a href="https://agentmods.dev/skills/kellyvv/phoneclaw/web-search"><img src="https://agentmods.dev/badge/skills/kellyvv/phoneclaw/web-search/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/kellyvv/phoneclaw/web-search"><img src="https://agentmods.dev/badge/skills/kellyvv/phoneclaw/web-search.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00025 | $0.01073 |
| Opus 5 | $0.00013 | $0.00536 |
| Sonnet 5 | $0.00005 | $0.00215 |
| Haiku 4.5 | $0.00003 | $0.00107 |
Grade A, and why
Web Search scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 9d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
What it actually says
联网搜索
你负责在用户明确需要实时信息、最新消息、新闻、网上资料、官网信息或网页正文时联网检索公开网页。
可用工具
- web-search: 免费搜索公开网页。参数:
query必填;max_results可选, 默认 5, 最多 8。 - web-fetch: 读取公开网页正文。参数:
url必填;max_characters可选, 默认 6000, 最多 12000。
何时使用
- 用户明确说"联网/上网/网上查/网页搜索/最新/新闻/实时/官网"等实时或网页意图 → 调用
web-search。 - 用户给出 URL 并要求读取、总结、解释、提取信息 → 调用
web-fetch。 - 用户只问常识、概念解释、闲聊、写作、翻译或基于对话历史的问题 → 不要联网, 直接回答或交给其他 Skill。
搜索流程
- 把用户需求整理成简洁搜索词, 保留用户原始的主体、地点和时间表达。不要把"今天/最新/current/today"机械改写成年份, 也不要删除用户给出的相对时间;只有在用户明确指定日期/范围时才把它保留进搜索词。
- 默认调用
web-search,max_results取 5。 - 先判断结果是否能回答用户问题:优先使用
confidence=high/medium且摘要能直接支持结论的结果。 - 如果结果标记
needs_fetch=true、confidence=low、is_homepage_like=true, 或摘要不足以支撑结论, 不要直接总结成事实;选择最相关的一条调用web-fetch读取正文。 - 如果用户要求总结某个具体网页, 直接调用
web-fetch。 - 同一轮最多读取一个网页。不要连续读取多个网页;如果仍证据不足, 明确说明没有足够可核验结果。
回答要求
- 必须基于工具返回的标题、摘要、正文和 URL 回答, 不要编造工具没有给出的细节。
- 回答中保留来源链接或来源名称; 涉及实时信息时说明搜索时间或结果时间。
- 先给结论: 能回答就直接回答; 证据不足就说"这次搜索没有返回足够可核验结果"。
- 对可用结果, 用一行说明"事实/进展 + 来源 + 日期/搜索时间 + URL"。
- 如果免费搜索来源被限流、没有结果、网页不可读或只有低置信结果, 明确告诉用户"实时搜索暂时没有足够可用结果", 不要用旧知识假装最新。
- 如果用户问的是具体产品/模型/公司发布, 优先使用工具返回的原始来源、官方来源或正文证据;没有可核验来源时, 明确说未确认。
- 对医疗、法律、金融、政策等高风险问题, 只概括搜索结果并建议用户核对原始来源。
调用格式
<tool_call> {"name": "web-search", "arguments": {"query": "搜索关键词", "max_results": 5}} </tool_call>
<tool_call> {"name": "web-fetch", "arguments": {"url": "https://example.com", "max_characters": 6000}} </tool_call>
What ships with it
2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 9d ago First seen · 97 lines · 25 tokens per session scan A 4280bb053488
Web Search is a skill published in the GitHub repository kellyvv/PhoneClaw (1,235 stars, last pushed 1mo ago), licensed Apache-2.0. It adds 25 tokens to every session and 1,073 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
argent-device-interact
Interact with an iOS simulator, Android emulator, or Chromium (CDP) app using argent MCP tools. Use when tapping UI elements, performing gestures, scrolling/swiping, typing text, pressing hardware buttons, launching apps, opening URLs, taking screenshots, waiting for an element to appear or disappear, or checking…
update-apple-webview-landscape
Use when: checking official Apple/WebKit updates and keeping this repository references current about WebView, browser engines, and compatibility boundaries.
browserenginekit
Build alternative browser engines using BrowserEngineKit. Use when developing a non-WebKit browser engine for iOS in the EU, managing web content rendering processes, configuring GPU and networking processes for browser functionality, checking device eligibility for alternative engines, or working with…
asc-app-create-ui
Create a new App Store Connect app record via browser automation. Use when there is no public API for app creation and you need an agent to drive the New App form.
beacio-sdk-consumer
Ship Web Bluetooth on iOS / iPhone Safari via the beacio SDK. Trigger when users ask about navigator.bluetooth, Web Bluetooth, GATT, BLE from a website on iPhone, Safari Web Extension for Bluetooth, @beacio/ packages, or connecting to BLE devices from a web page on iOS.
opencli-sitemap-author
Use when creating or maintaining OpenCLI site sitemaps: agent-facing navigation, page-state, action, workflow, API-reference, pitfall, and fallback knowledge for a website. Use after browser exploration discovers durable site context, when a sitemap is stale, or when promoting local site knowledge into the repo.