multiAI Summary Pending

tauri-app-http-client

Make HTTP requests from the Rust side using the Tauri v2 http-client plugin, bypassing WebView CORS restrictions. Use when sending API requests with domain allowlists, configuring secure transport, or handling request timeouts and retries.

223 stars

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/tauri-app-http-client/SKILL.md --create-dirs "https://raw.githubusercontent.com/partme-ai/full-stack-skills/main/skills/tauri-skills/tauri-app-http-client/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/tauri-app-http-client/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How tauri-app-http-client Compares

Feature / Agenttauri-app-http-clientStandard Approach
Platform SupportmultiLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Make HTTP requests from the Rust side using the Tauri v2 http-client plugin, bypassing WebView CORS restrictions. Use when sending API requests with domain allowlists, configuring secure transport, or handling request timeouts and retries.

Which AI agents support this skill?

This skill is compatible with multi.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

## When to use this skill

**ALWAYS use this skill when the user mentions:**
- HTTP requests from Tauri (bypassing WebView CORS)
- Domain allowlists for API requests
- Configuring request timeouts, retries, or headers

**Trigger phrases include:**
- "http client", "fetch", "API request", "CORS", "allowlist", "http plugin"

## How to use this skill

1. **Install the http plugin**:
   ```bash
   cargo add tauri-plugin-http
   ```
2. **Register the plugin** in your Tauri builder:
   ```rust
   tauri::Builder::default()
       .plugin(tauri_plugin_http::init())
   ```
3. **Configure scoped access** in `src-tauri/capabilities/default.json`:
   ```json
   {
     "permissions": [
       { "identifier": "http:default", "allow": [{ "url": "https://api.example.com/**" }] }
     ]
   }
   ```
4. **Make requests from the frontend**:
   ```typescript
   import { fetch } from '@tauri-apps/plugin-http';
   const response = await fetch('https://api.example.com/data', {
     method: 'GET',
     headers: { 'Authorization': 'Bearer token' },
     connectTimeout: 10000,
   });
   const data = await response.json();
   ```
5. **Restrict allowed domains** to only the APIs your app needs (principle of least privilege)
6. **Handle errors** with proper timeout, retry, and network failure patterns

## Outputs

- HTTP client setup with domain-scoped permissions
- Request pattern with headers and timeout configuration
- Error handling and retry strategy

## References

- https://v2.tauri.app/plugin/http-client/

## Keywords

tauri http client, fetch, API request, CORS, allowlist, http plugin