Content
Netfix
[English README](README.en.md)




> **Can't configure proxy on Mac? Paste the connection parameters from your proxy provider, and Netfix will set it up for you.**
> **Positioning:** Netfix is a practical tool, not an AI product control system. It solves the problem of network self-rescue when the operator tool chain is down: locate, pre-check, deploy, and recover, then return to the actual project work.
Netfix is a small tool on macOS that helps you configure your proxy connection. Paste the connection parameters provided by your proxy service provider, and test if it works, save it to your Macchain, and then let you confirm whether to start using the It automatically backs up your settings before making any changes and allows you to restore them with one click when you're done.
**No API Key required.** Diagnosis, rule interpretation, proxy pre-check, saving, deployment, and recovery are all done locally. You can connect to DeepSeek, Kimi, MiniMax, Qwen, or any OpenAI-compatible service when needed, and the cloud model will only interpret the **anonymized diagnostic report**.
## Three Steps to Deploy Your Existing Proxy on This Mac
1. **Download App**: Double-click the DMG file and drag Netfix to the "Applications" folder. If you encounter a "cannot verify developer" error on the first launch, go to "System Settings → Privacy & Security → Still Open".
2. **Paste Parameters**: Open Netfix, click "Paste Proxy Parameters" on the main interface, and paste the connection parameters provided by your proxy service provider. Netfix will check if it works and save it to your local password library.
3. **Start Using**: After the check passes, click "Start Using Proxy". Netfix will back up your current network settings and then enable the proxy. When you're done, open the settings and click "Restore Original Network Settings" to restore.
Supported connection parameter formats:
```text
socks5h://user:pass@proxy.example.com:1080
http://user:pass@proxy.example.com:8000
proxy.example.com:1080:user:pass
host,port,username,password
```
These parameters are usually found in the "Personal Center", "Node List", or "Connection Information" section of your proxy service provider's website. Copy the HTTP or SOCKS5 line and paste it into Netfix.
Unsupported formats: `ss://`, `vmess://`, or Clash/sing-box subscription links. Please copy the HTTP or SOCKS5 parameters from your provider's website.
The main interface will display a green, blue, orange, or red card indicating the current status:
* Blue: "No proxy parameters pasted" → Paste parameters.
* Green: "Using proxy normally" → Everything is fine.
* Orange: "Proxy is in use, but the last check failed" → Click one-click diagnosis to see specific issues.
* Red: "System network needs recovery" → Click "Restore original network settings".
* Error messages will be displayed in plain language, and you can click "View Log" for more details.

HTTP/HTTPS/SOCKS proxies with usernames and passwords will be forwarded by Netfix locally; passwords will be stored in the macOS Keychain and not written to shell history, logs, or the release package.
## Current Version Description
The current version **v0.2.0-qa.1 preview** helps you paste parameters, pre-check, deploy, and recover your network. It hasn't been signed with an Apple Developer ID or notarized, so you may encounter a "cannot verify developer" error on the first launch. This version is suitable for technical test users; for general users, we need to complete the signing and notarization.
You'll need to prepare the **HTTP/SOCKS5 connection parameters** from your proxy service provider, such as `host:port:username:password`. Don't copy the "Current Exit IP" as it's only for detection. Netfix is not a Clash client and does not parse subscriptions; `ss://`, `vmess://`, or Clash/sing-box subscription links are not supported.
System requirements: macOS 13 or later; compatible with both Apple Silicon and Intel Macs.
```bash
# Preview what the script will do without installing or modifying configurations
curl -fsSL https://raw.githubusercontent.com/baishiqi45-dotcom/netfix/main/scripts/install_mac_app_from_github.sh | bash -s -- --dry-run
# Install.app for technical testQA version, unsigned -fsSL https://raw.githubusercontent.com/baishiqi45-dotcom/netfix/main/scripts/install_mac_app_from_github.sh | bash
# Uninstall the app
curl -fsSL https://raw.githubusercontent.com/ba45-dotcom/netfix/main/scripts/install_mac_app_from_github.sh | bash -s -- --uninstall
```
The installation script will place the app in `~/Applications/Netfix.app` and open it. If you only want to view the source code or run it without installing the app, you can do so from the source.
## What Problems Does It Solve
| Scenario | Description |
| --- | --- |
| **Can't configure proxy on Mac** | Paste connection parameters → Pre-check → Save to Keychain → One-click deployment |
| **Mobile works, but Mac doesn't** | Detects Mac's system proxy, DNS, IPv6, and running proxy software status |
| **Can't connect to Codex / ChatGPT / GitHub Identifies issues with the network layer, proxy layer,, or target service |
| **Proxy is on, but some software doesn't use it** | Checks if the system proxy is effective and which apps may not use it |
| **Terminal works, but app doesn't** | Compares terminal environment variables proxy settings |
| **Switching computers and want to** | Proxy parameters are saved in Keychain with anonym |
## Compared to Existing Tools
| Tool | What it does | What Netfix adds |
| --- | --- |
| **ClashX / Shadowrocket-box** | Client-side proxy apps: provide nodes and | Netfix checks if your Mac's network can connect to the proxy and provides pre-checks and recovery |
| Monitor / `netstat`** | General process/port inspection report covering DNS, system proxy, proxy software, IPv TLS, and target indicating which layer has issues |
| **Chatbot-written `curl` / `ping`** | Temporary command creation | Structured JSON output, graded repair, automatic backup of original network, and anonymization before sending to |
| **Network monitoring widgets Real-time speed/signal display | Repair-oriented: paste parameters → pre-check → deploy → monitor → recover |
## What It Doesn't Do
- **Does not sell proxies, embed nodes, or promise third-party service quality.** Netfix only helps you parse, pre-check, save, deploy, monitor, and recover your existing connection parameters.
- **Strictly complies with third-party platforms' account, risk, geographic, and abuse rules.**
- **Will not** automatically leak your proxy password, API Key, raw reports, QR codes, or cookies to the cloud, shell history, screenshots, or GitHub Issues.
## If It Fails, How Do I Recover?
Netfix automatically backs up your original network settings before modifying the system proxy.
- **Recover from the app**: Open Netfix settings, click "Restore original network settings" in the proxy section.
- **Command-line recovery**: If you're comfortable with the terminal, run `python3 netfix.py rollback`.
- **Still not working**: Restart your Mac, and the system proxy settings will revert to their default state. Then, check if the parameters from your provider's website are complete.
## AI Interpretation (Optional)
No API Key is required. Netfix uses local rules to interpret diagnostic results. When connected to an the cloud model will anonymized reports.
### App Path
Open " AI", select DeepSeek, Kimi/MoonshotMax, Qwen, or a custom OpenAI, paste your API and save. The Key stored in the KeyRecommended for beginners:
- **DeepSeek**: Stable domestic primary text interpretation
- **Kimi / Moonshot**: Long-text + image- **MiniMax**: Image consultation alternative
- ** Any OpenAI-compatible fill in `base + `model`api_key`
### Environment Variable Path
```bash NETFIX_LLM_API_KEY_DEEPSEEK="sk-..."
python3 net explain --provider deepseek --json
```
### Configuration Example
```curl -s http://0.0.1:8765/ll \
-H "Content-Type: application/json" \
-d '{"enabled":true,"api_key":"$DEEPSEEK_APIfallback":{"enabled":true,"chain":["deepseek","_kimi","minqwen"],"vision_chain":["minimax","moonimi","qwen_usage_ledger":'
```
Image consultation requires user confirmation for upload:
```bash
curl -s http://127.0.0.1:8765/llm/explain \
-H "Content-Type: application/json" \
-d '{"mode":"image_question","upload_confirmed":true,"image":"data:image/..."}'
```
MCP tool names:
- `netfix_llm_providers`
- `netfix_explain_llm`
The Agent's parameter writing will include `mode: "image_question"`, `upload_confirmed: true`, and `data:image/...`. DeepSeek is the default text interpretation mainstay; image paths go through MiniMax, Kimi/Moonshot, or Qwen, and DeepSeek should not be as an image. MCP cannot save API Keys or proxy passwords and only local Netfix service.
## Developer and Agent Entrance
If you're using Codex, Kimi, Claude, Cursor, or MiniMax-compatible local intelligence, you can register Netfix as an MCP tool. Regular users don't need to read this section.
For users who have already installed the app. Open Netfix.
2. Go to "Settings → AI Programming Assistant → Copy to Codex", paste the command into the Codex terminal, and restart Codex.
3. If you're using Kimi, click "Copy Kimi/Universal Configuration". Some Kimi Code CLI versions lack the `mcp add` command; fill in the universal stdio configuration into the MCP-supported Kimi/Agent host.
4. Claude Desktop: paste the configuration into `~/Library/Application Support/Claude/claude_desktop_config.json` under the `mcp section.
5. paste the configuration into/.cursor/mcp or the project root directory `.cursor/mcp.json the `mcpServers` section.
6. MiniMax local intelligence: as long as the hostio, fill in `command: python3 the script-printed`.
Source code users can register Codex from the repository root:
```bash
/install_mcp.sh --all
./scripts/install.sh --all --
```
Codex example:
```bash
codex mcp add -- python3 "$(netfix/mcpcodex mcp list
```
Kimiaude/Cursor/MiniMax-compatible universal MCP std:
```yaml
netfix
command3
args:
/Users/you/Netfix.app/netfix/mcp_server.py
```
Agent-side standard entrance:
```bash netfix.py codex --json
```
reading `environment.activediagnostics`,uses`, ` and `manual_steps-risk repairs can directly; system configuration user confirmation; manual actions only provide a checklist.
Directly from Source
```bash
pip install -e .
python3 netfix.py codex
python3 netfix.py codex --json
python3 netfix.py server --host 127.0.0.1 --port 8765
```
The third command starts web console; open `http://127.01:876 in your browser. Don't double-click `gui/web/index.html` as it without a service.
Build a local macOS app:
```bash
cd gui/macos
swift build
./build_app.sh
open .Netfix.app
```
The goal for general users is `Netfix-click to open and automatically start the local diagnosis the terminal.
## Real Case Overview
The `cases/` directory contains anonymized real-world scenarios; see [Case Index](cases/INDEX.md). A great starting point for understanding Netfix is Regular User's First Proxy Deployment: 9 Pitfalls](cases/2026-06-29-普通用户代理部署体验审查.md). It explains why Netfix follows the "paste parameters → pre-check → deploy → recover" process.
Other notable cases:
- **[Codex reports connection issue, actually due to expired API Key](cases/20260617-1405-codex-reachable-needs-key.md)**: Network layer is fine; Netfix identifies the root cause isn't on your end.
- **[Healthy snapshot](cases/2026-06-17-healthy-baseline.md)**: Contrasting problem-solving and post-solution as a quick comparison template for similar future issues.
New cases are welcome; submit according to `cases/TEMPLATE.md`, and read [CONTRIBUTING.md](CONTRIBUTING.md) and [SECURITY.md](SECURITY.md) before PR.
## FAQ
**Can I use it without an API Key?**
Yes. Diagnosis, rule interpretation, proxy pre-check, saving, starting to use, and network recovery are all done locally. The API Key is only used when you actively enable cloud AI interpretation.
| Function | Without API Key | With API Key |
| --- | --- | --- |
| Network Diagnosis | ✅ Local rule interpretation | ✅ Local + cloud human language interpretation |
| Proxy Pre-check/Deployment | ✅ Available | ✅ Available |
| AI Detailed Explanation | ⚠️ Local template | ✅ Model-based on anonymized report |
| Image Consultation | ❌ Not available | ✅ Requires confirmation before upload |
**Will it mess up my network?**
The original network settings are backed up before modifying the system proxy. When you're done, click "Restore original network settings" to revert. You can also run `python3 netfix.py rollback` in the terminal.
**Where are my proxy password and API Key stored?**
Only stored in macOS Keychain; not written to logs, reports, screenshots, release packages, or GitHub Issues.
**Which proxy formats are supported?**
Supports `host:port:user:pass`, `http://user:pass@host:port`, `socks5://user:pass@host:port`, `host,port,user,pass`. Temporarily does notss://`, `vmess://`, or Clash/sing-box subscription links.
Overview
| What regular users see | Developer interface |
| --- | --- | --- |
| One-click diagnosis | Which layer has issues, what to do next | `python3 netfix.py codex --json` |
| Proxy paste deployment | Paste parameters, pre-check, save, deploy, recover | `proxy`, `proxy-monitor`, `proxy-switch` |
| AI interpretation | Optional cloud interpretation, anonymized before sending | Local HTTP API / MCP |
| Health maintenance | Node anomalies, IPv6/TLS/DNS issue hints | `watch`, `report`, `logs` |
| Agent access | Codex / Kimi / Claude / Cursor can copy registration commands | `netfix/mcp_server.py` |
| Safe recovery | Backs up original network settings before modifying; failsafe recovery | `fix`, `rollback`, journal |
## Security Boundary
- **Local first**: Diagnosis and rule deduction do not rely on external LLM.
- Low-risk repairs can be executed directly; system configuration changes require user confirmation.
- Proxy passwords and API Keys do not enter reports, screenshots, logs, export packages, or GitHub Issues.
- Image consultation does not automatically identify visible passwords in image pixels; users must confirm anonymization before uploading.
- Netfix does not provide proxy services, nor does it promise third-party service quality or help bypass third-party account, risk, or abuse controls.
Open-Source Release Status
The source code open path has a gate:` generates a code snapshot, excluding old proxy DMG/ZIP, build output, and local runtime state. For public releases, it is recommended to release `open-source-export/Netfix-0.0-source` instead of directly using the development workspace as the release package commands:
```bash
python3 -m pytest -q
python3 scripts/source_export.py --zip --json
python3 scripts/release_audit.py --scope workspace --root-export/Netfix-0.2.0-source
python3 scripts/release_audit.py --scope workspace --root .
python3 scripts/release_preflight.py --with-dmg-smoke3 scripts/release_preflight.py --with-dmg-smoke --json
python3 scripts/release_preflight.py --with-dmg-smoke \
-- gui/.build/release-export/Netfix-0.2.0-macos/download-qa-preflight(cd gui/macos/.build/Netfix-0.2.0-macos && python3 verify --ed-preflight)
```
If `release_audit` reports `-release-artifact`, it means the release package has been indexed by git it from the index only, without deleting local files:
```bash
git lsNetfix-*.dmg' 'Netfix-*.zip'
git rm --cached Netfix-0.2.0.dmg Netfix-0.0-macospython3 scripts/release_audit.py -- --root .
```
Binary releases require an additional set of gates: Developer, notarization, clean machine QA, legal draft confirmation, and live. Until completed, it can called a local candidate package, official release.
---
## Repository Overview
```text
netfix/
├──.py Command-line entry
fix/ Diagnosis, inference, repair, API, MCP
├── gui/macos/ SwiftUI local App gui/web/ Local web console
├── rules/ Services, root cause rules
├── scripts/ Release, audit, MCP registration├── tests/ Python / MCP / UI text tests
├── assets/github/ GitHub bilingual visual assets
└── docs/github/ release, screenshots, operational instructions
```
---
If Netfix has helped a Mac network issue, please star this repository. This way, you can signed version, screenshots/GIFs, and subsequent progress on new cases## Contribution
Welcome to submit:
- New de-sensitized cases, placed in `cases/YYYY-MM-DD-symptom-keyword.md`.
- New symptom rules `rules/symptoms.json`.
service groups,rules/services.json`.
- New proxy software adapters, placed in `/cores/`.
- Clearer, screenshots, and installation instructions submitting, please read [CONTRIBUTING.md](CONTRIBUTING.md) and [SECURITY.md](SECURITY.md). Do not post real proxy passwords, API Keys, QR codes, cookies, bearer tokens, or raw reports in GitHub Issues.
---
## License
MIT
MCP Config
Below is the configuration for this MCP Server. You can copy it directly to Cursor or other MCP clients.
mcp.json
Connection Info
You Might Also Like
No recommendations available