srift 4.3.0__tar.gz → 4.3.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,11 +1,12 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: srift
3
- Version: 4.3.0
4
- Summary: Zero-config, end-to-end encrypted peer-to-peer file transfer CLI, MCP server and Python SDK for AI agents (Claude, Cursor, Windsurf, Continue, Zed) — runs the official Node.js CLI via a bundled Node.js runtime, no separate Node.js install required.
3
+ Version: 4.3.2
4
+ Summary: Send any file as a download link from the CLI, Python or an AI agent (MCP server). Encrypted P2P file transfer and chat. No account. Bundles the SRIFT CLI.
5
5
  Project-URL: Homepage, https://srift.app
6
6
  Project-URL: Repository, https://github.com/srivardhan113/SRIFT-Open_Source
7
7
  Project-URL: Issues, https://github.com/srivardhan113/SRIFT-Open_Source/issues
8
- Project-URL: Documentation, https://srift.app/docs
8
+ Project-URL: Documentation, https://srift.app/AGENTS.md
9
+ Project-URL: Changelog, https://srift.app/CHANGELOG.md
9
10
  Author: SRIFT
10
11
  License: MIT License
11
12
 
@@ -30,7 +31,7 @@ License: MIT License
30
31
  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
31
32
  SOFTWARE.
32
33
  License-File: LICENSE
33
- Keywords: aes-256-gcm,agent-to-agent,agentnet,ai-agent,ai-agents,autogen,claude,cli,crewai,cursor,e2ee,encrypted-chat,encryption,end-to-end-encryption,file-transfer,langchain,mcp,mcp-server,model-context-protocol,multi-agent,p2p,peer-to-peer,quick-share,sdk,secure-file-transfer,webrtc,wetransfer-alternative,windsurf
34
+ Keywords: agent-to-agent,ai-agents,claude,cli,cursor,e2ee,encryption,file-sharing,file-transfer,mcp,mcp-server,model-context-protocol,p2p,sdk,send-files,webrtc
34
35
  Classifier: Development Status :: 5 - Production/Stable
35
36
  Classifier: Environment :: Console
36
37
  Classifier: Intended Audience :: Developers
@@ -68,6 +69,28 @@ Deliver any file from an AI agent sandbox (Claude, Cursor, Windsurf, Continue, Z
68
69
  📦 **GitHub Repository:** [https://github.com/srivardhan113/SRIFT-Open_Source](https://github.com/srivardhan113/SRIFT-Open_Source)
69
70
  🤖 **AI Agent Hub:** [https://srift.app/ai-agents](https://srift.app/ai-agents)
70
71
 
72
+ ## Quick start
73
+
74
+ Send a file as a link (nothing to install, the recipient just opens it):
75
+
76
+ ```bash
77
+ npx -y srift-transfer quick-share ./report.pdf
78
+ # ↳ https://srift.app/d/7k3m9xq
79
+ ```
80
+
81
+ Give an AI agent file transfer. Add to any MCP client (Claude Desktop, Cursor, Windsurf, Cline, VS Code):
82
+
83
+ ```json
84
+ { "mcpServers": { "srift": { "command": "npx", "args": ["-y", "srift-transfer", "mcp"] } } }
85
+ ```
86
+
87
+ ```bash
88
+ claude mcp add srift -- npx -y srift-transfer mcp # Claude Code, local (15 tools)
89
+ claude mcp add --transport http srift-hosted https://srift.app/mcp # hosted, no install (9 session tools)
90
+ ```
91
+
92
+ Then ask: "send me the build as a link". The agent calls `srift_quick_share` and replies with the URL.
93
+
71
94
  ---
72
95
 
73
96
  ## ⚡ Why SRIFT for AI Agents?
@@ -485,7 +508,7 @@ Events emitted: `connection_state`, `join_request`, `participants`, `file_offer`
485
508
  - **Cryptography**: Session chat copies (`pk1`) and relayed file chunks (`pgcm1`) are sealed with **AES-256-GCM** under ECDH P-256 + HKDF-SHA256 keys generated on the devices (a fresh key pair per file transfer); the optional `--room-secret` is mixed into every key. Peers older than 4.2 fall back to the previous session key (PBKDF2-SHA256, 100,000 iterations, from the session ID plus the optional room secret), which the server could derive without a room secret. `--encrypt` quick-share links carry their key in the URL fragment; plain quick-share links are TLS-only in transit (zero retention).
486
509
  - **No database**: the server keeps sessions in RAM only, and any number of instances behave as one; a crashed instance's sessions resume on a sibling's RAM copy within seconds.
487
510
  - **Adaptive Transport Stack** (every rung works over outbound 443 when needed):
488
- 1. **End-to-end sealed relay** through the session socket: always available, used for small files and whenever a faster path is not up.
511
+ 1. **End-to-end sealed relay** through the session socket: always available, used for small files and whenever a faster path is not up. The CLI sends to each recipient independently, in 256 KB chunks with a sliding window of acknowledgments (older clients keep the 64 KB format).
489
512
  2. **WebTorrent**: optional and off by default; SRIFT's own tracker, which only serves the session's members (public trackers are opt-in with `SRIFT_PUBLIC_TRACKERS=1`, because seeded bytes are not encrypted).
490
513
  3. Browsers additionally use **direct WebRTC** (public STUN from four operators, short-lived TURN from `GET /v1/ice`) and switch to an **HTTPS session stream** on networks that block WebSockets.
491
514
  - **Privacy First**: The daemon binds to `127.0.0.1` only. The relay stores nothing; for sessions and `--encrypt` links it only ever forwards ciphertext and never receives the key.
@@ -18,6 +18,28 @@ Deliver any file from an AI agent sandbox (Claude, Cursor, Windsurf, Continue, Z
18
18
  📦 **GitHub Repository:** [https://github.com/srivardhan113/SRIFT-Open_Source](https://github.com/srivardhan113/SRIFT-Open_Source)
19
19
  🤖 **AI Agent Hub:** [https://srift.app/ai-agents](https://srift.app/ai-agents)
20
20
 
21
+ ## Quick start
22
+
23
+ Send a file as a link (nothing to install, the recipient just opens it):
24
+
25
+ ```bash
26
+ npx -y srift-transfer quick-share ./report.pdf
27
+ # ↳ https://srift.app/d/7k3m9xq
28
+ ```
29
+
30
+ Give an AI agent file transfer. Add to any MCP client (Claude Desktop, Cursor, Windsurf, Cline, VS Code):
31
+
32
+ ```json
33
+ { "mcpServers": { "srift": { "command": "npx", "args": ["-y", "srift-transfer", "mcp"] } } }
34
+ ```
35
+
36
+ ```bash
37
+ claude mcp add srift -- npx -y srift-transfer mcp # Claude Code, local (15 tools)
38
+ claude mcp add --transport http srift-hosted https://srift.app/mcp # hosted, no install (9 session tools)
39
+ ```
40
+
41
+ Then ask: "send me the build as a link". The agent calls `srift_quick_share` and replies with the URL.
42
+
21
43
  ---
22
44
 
23
45
  ## ⚡ Why SRIFT for AI Agents?
@@ -435,7 +457,7 @@ Events emitted: `connection_state`, `join_request`, `participants`, `file_offer`
435
457
  - **Cryptography**: Session chat copies (`pk1`) and relayed file chunks (`pgcm1`) are sealed with **AES-256-GCM** under ECDH P-256 + HKDF-SHA256 keys generated on the devices (a fresh key pair per file transfer); the optional `--room-secret` is mixed into every key. Peers older than 4.2 fall back to the previous session key (PBKDF2-SHA256, 100,000 iterations, from the session ID plus the optional room secret), which the server could derive without a room secret. `--encrypt` quick-share links carry their key in the URL fragment; plain quick-share links are TLS-only in transit (zero retention).
436
458
  - **No database**: the server keeps sessions in RAM only, and any number of instances behave as one; a crashed instance's sessions resume on a sibling's RAM copy within seconds.
437
459
  - **Adaptive Transport Stack** (every rung works over outbound 443 when needed):
438
- 1. **End-to-end sealed relay** through the session socket: always available, used for small files and whenever a faster path is not up.
460
+ 1. **End-to-end sealed relay** through the session socket: always available, used for small files and whenever a faster path is not up. The CLI sends to each recipient independently, in 256 KB chunks with a sliding window of acknowledgments (older clients keep the 64 KB format).
439
461
  2. **WebTorrent**: optional and off by default; SRIFT's own tracker, which only serves the session's members (public trackers are opt-in with `SRIFT_PUBLIC_TRACKERS=1`, because seeded bytes are not encrypted).
440
462
  3. Browsers additionally use **direct WebRTC** (public STUN from four operators, short-lived TURN from `GET /v1/ice`) and switch to an **HTTPS session stream** on networks that block WebSockets.
441
463
  - **Privacy First**: The daemon binds to `127.0.0.1` only. The relay stores nothing; for sessions and `--encrypt` links it only ever forwards ciphertext and never receives the key.
@@ -4,8 +4,8 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "srift"
7
- version = "4.3.0"
8
- description = "Zero-config, end-to-end encrypted peer-to-peer file transfer CLI, MCP server and Python SDK for AI agents (Claude, Cursor, Windsurf, Continue, Zed) — runs the official Node.js CLI via a bundled Node.js runtime, no separate Node.js install required."
7
+ version = "4.3.2"
8
+ description = "Send any file as a download link from the CLI, Python or an AI agent (MCP server). Encrypted P2P file transfer and chat. No account. Bundles the SRIFT CLI."
9
9
  readme = "README.md"
10
10
  license = { file = "LICENSE" }
11
11
  requires-python = ">=3.9"
@@ -14,31 +14,19 @@ keywords = [
14
14
  "mcp",
15
15
  "mcp-server",
16
16
  "model-context-protocol",
17
- "ai-agent",
18
- "ai-agents",
19
- "claude",
20
- "cursor",
21
- "windsurf",
22
17
  "file-transfer",
18
+ "file-sharing",
19
+ "send-files",
23
20
  "p2p",
24
- "peer-to-peer",
21
+ "e2ee",
25
22
  "encryption",
26
- "aes-256-gcm",
27
23
  "cli",
28
- "quick-share",
29
- "sdk",
30
- "end-to-end-encryption",
31
- "e2ee",
32
- "webrtc",
24
+ "ai-agents",
33
25
  "agent-to-agent",
34
- "multi-agent",
35
- "agentnet",
36
- "langchain",
37
- "crewai",
38
- "autogen",
39
- "secure-file-transfer",
40
- "encrypted-chat",
41
- "wetransfer-alternative",
26
+ "claude",
27
+ "cursor",
28
+ "webrtc",
29
+ "sdk",
42
30
  ]
43
31
  classifiers = [
44
32
  "Development Status :: 5 - Production/Stable",
@@ -65,7 +53,8 @@ dependencies = ["nodejs-wheel-binaries>=24.19.0"]
65
53
  Homepage = "https://srift.app"
66
54
  Repository = "https://github.com/srivardhan113/SRIFT-Open_Source"
67
55
  Issues = "https://github.com/srivardhan113/SRIFT-Open_Source/issues"
68
- Documentation = "https://srift.app/docs"
56
+ Documentation = "https://srift.app/AGENTS.md"
57
+ Changelog = "https://srift.app/CHANGELOG.md"
69
58
 
70
59
  [project.scripts]
71
60
  srift = "srift_cli.__main__:main"
@@ -27,7 +27,7 @@ import urllib.error
27
27
  from typing import Any, Dict, List, Optional
28
28
 
29
29
  __all__ = ["Srift", "AsyncSrift", "SriftError"]
30
- __version__ = "4.3.0"
30
+ __version__ = "4.3.2"
31
31
  # Python-urllib's default User-Agent is refused by some CDNs/WAFs (srift.app included).
32
32
  _UA = f"srift-python-sdk/{__version__}"
33
33
 
@@ -13,4 +13,4 @@ from __future__ import annotations
13
13
 
14
14
  __all__ = ["__version__"]
15
15
 
16
- __version__ = "4.3.0"
16
+ __version__ = "4.3.2"