deepwrap 0.1.0__tar.gz → 0.1.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.
- {deepwrap-0.1.0 → deepwrap-0.1.2}/PKG-INFO +136 -149
- {deepwrap-0.1.0 → deepwrap-0.1.2}/README.md +135 -148
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap/__main__.py +7 -25
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap/client.py +96 -10
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap/utils/bearer_token_extractor.py +26 -0
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap.egg-info/PKG-INFO +136 -149
- {deepwrap-0.1.0 → deepwrap-0.1.2}/pyproject.toml +1 -1
- {deepwrap-0.1.0 → deepwrap-0.1.2}/LICENSE +0 -0
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap/__init__.py +0 -0
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap/api/__init__.py +0 -0
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap/api/base.py +0 -0
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap/api/chat_session.py +0 -0
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap/api/chats.py +0 -0
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap/api/pow.py +0 -0
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap/config.py +0 -0
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap/core/__init__.py +0 -0
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap/core/auth.py +0 -0
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap/core/session_manager.py +0 -0
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap/interfaces/__init__.py +0 -0
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap/interfaces/api.py +0 -0
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap/interfaces/cli.py +0 -0
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap/modules/__init__.py +0 -0
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap/modules/pow_asm.py +0 -0
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap/py.typed +0 -0
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap/utils/browser_finder.py +0 -0
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap/utils/browser_process.py +0 -0
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap/utils/cdp_client.py +0 -0
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap/utils/config_store.py +0 -0
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap/utils/dev_tools_http.py +0 -0
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap/utils/port_finder.py +0 -0
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap.egg-info/SOURCES.txt +0 -0
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap.egg-info/dependency_links.txt +0 -0
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap.egg-info/entry_points.txt +0 -0
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap.egg-info/requires.txt +0 -0
- {deepwrap-0.1.0 → deepwrap-0.1.2}/deepwrap.egg-info/top_level.txt +0 -0
- {deepwrap-0.1.0 → deepwrap-0.1.2}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: deepwrap
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.2
|
|
4
4
|
Summary: Python SDK, CLI, and local FastAPI wrapper for DeepSeek Chat.
|
|
5
5
|
Author-email: Nika Kudukhashvili <nikakuduxashvili0@gmail.com>
|
|
6
6
|
Maintainer-email: Nika Kudukhashvili <nikakuduxashvili0@gmail.com>
|
|
@@ -55,6 +55,51 @@ Dynamic: license-file
|
|
|
55
55
|
|
|
56
56
|
# DeepWrap
|
|
57
57
|
|
|
58
|
+
[](https://pypi.org/project/deepwrap/)
|
|
59
|
+
[](https://pypi.org/project/deepwrap/)
|
|
60
|
+
[](LICENSE)
|
|
61
|
+
[](https://github.com/Kuduxaaa/deepwrap)
|
|
62
|
+
|
|
63
|
+
## Table of Contents
|
|
64
|
+
|
|
65
|
+
- [Installation](#installation)
|
|
66
|
+
- [Quick Start](#quick-start)
|
|
67
|
+
- [Authentication](#authentication)
|
|
68
|
+
- [Direct Token](#direct-token)
|
|
69
|
+
- [Environment Variable](#environment-variable)
|
|
70
|
+
- [Browser Auth from Python](#browser-auth-from-python)
|
|
71
|
+
- [CLI Authentication](#cli-authentication)
|
|
72
|
+
- [Python SDK Usage](#python-sdk-usage)
|
|
73
|
+
- [Basic Non-Streaming Chat](#basic-non-streaming-chat)
|
|
74
|
+
- [Streaming Chat](#streaming-chat)
|
|
75
|
+
- [Multi-Turn Chat](#multi-turn-chat)
|
|
76
|
+
- [Supported Models](#supported-models)
|
|
77
|
+
- [God Mode](#god-mode)
|
|
78
|
+
- [Python SDK](#python-sdk)
|
|
79
|
+
- [CLI Usage](#cli-usage)
|
|
80
|
+
- [Interactive CLI Commands](#interactive-cli-commands)
|
|
81
|
+
- [Local FastAPI Server](#local-fastapi-server)
|
|
82
|
+
- [HTTP API](#http-api)
|
|
83
|
+
- [Health Check](#health-check)
|
|
84
|
+
- [One-Shot Chat Request](#one-shot-chat-request)
|
|
85
|
+
- [Create Persistent Session](#create-persistent-session)
|
|
86
|
+
- [Use Persistent Session](#use-persistent-session)
|
|
87
|
+
- [Delete Session](#delete-session)
|
|
88
|
+
- [Streaming Over HTTP](#streaming-over-http)
|
|
89
|
+
- [Plain Text Streaming](#plain-text-streaming)
|
|
90
|
+
- [Server-Sent Events Streaming](#server-sent-events-streaming)
|
|
91
|
+
- [Environment Variables](#environment-variables)
|
|
92
|
+
- [API Design](#api-design)
|
|
93
|
+
- [Examples](#examples)
|
|
94
|
+
- [Switch Models](#switch-models)
|
|
95
|
+
- [Hide Thinking Output](#hide-thinking-output)
|
|
96
|
+
- [Disable Search](#disable-search)
|
|
97
|
+
- [Error Handling](#error-handling)
|
|
98
|
+
- [Notes](#notes)
|
|
99
|
+
- [Security Notice](#security-notice)
|
|
100
|
+
- [Disclaimer](#disclaimer)
|
|
101
|
+
- [License](#license)
|
|
102
|
+
|
|
58
103
|
**DeepWrap** is a lightweight Python SDK, CLI, and local HTTP API wrapper for interacting with DeepSeek Chat through a clean developer-friendly interface.
|
|
59
104
|
|
|
60
105
|
It provides:
|
|
@@ -67,7 +112,7 @@ It provides:
|
|
|
67
112
|
- Interactive terminal UI
|
|
68
113
|
- FastAPI server mode
|
|
69
114
|
- Session-based chat support
|
|
70
|
-
-
|
|
115
|
+
- Internal proof-of-work handling
|
|
71
116
|
|
|
72
117
|
> Repository: [https://github.com/Kuduxaaa/deepwrap](https://github.com/Kuduxaaa/deepwrap)
|
|
73
118
|
|
|
@@ -77,9 +122,9 @@ It provides:
|
|
|
77
122
|
|
|
78
123
|
```bash
|
|
79
124
|
pip install deepwrap
|
|
80
|
-
|
|
125
|
+
```
|
|
81
126
|
|
|
82
|
-
|
|
127
|
+
Install directly from GitHub:
|
|
83
128
|
|
|
84
129
|
```bash
|
|
85
130
|
pip install git+https://github.com/Kuduxaaa/deepwrap.git
|
|
@@ -90,23 +135,25 @@ For local development:
|
|
|
90
135
|
```bash
|
|
91
136
|
git clone https://github.com/Kuduxaaa/deepwrap.git
|
|
92
137
|
cd deepwrap
|
|
93
|
-
pip install -e .
|
|
138
|
+
pip install -e ".[dev]"
|
|
94
139
|
```
|
|
95
140
|
|
|
96
141
|
---
|
|
97
142
|
|
|
98
143
|
## Quick Start
|
|
99
144
|
|
|
145
|
+
Authenticate once:
|
|
146
|
+
|
|
100
147
|
```bash
|
|
101
|
-
deepwrap
|
|
148
|
+
deepwrap auth
|
|
102
149
|
```
|
|
103
150
|
|
|
104
|
-
|
|
151
|
+
Then use DeepWrap from Python:
|
|
105
152
|
|
|
106
153
|
```python
|
|
107
154
|
from deepwrap import Client
|
|
108
155
|
|
|
109
|
-
client = Client(
|
|
156
|
+
client = Client()
|
|
110
157
|
chat = client.chats.create_session(model="expert")
|
|
111
158
|
|
|
112
159
|
response = chat.respond(
|
|
@@ -117,13 +164,27 @@ response = chat.respond(
|
|
|
117
164
|
print(response)
|
|
118
165
|
```
|
|
119
166
|
|
|
167
|
+
Or start the interactive terminal UI:
|
|
168
|
+
|
|
169
|
+
```bash
|
|
170
|
+
deepwrap
|
|
171
|
+
```
|
|
172
|
+
|
|
120
173
|
---
|
|
121
174
|
|
|
122
175
|
## Authentication
|
|
123
176
|
|
|
124
177
|
DeepWrap uses a Bearer token.
|
|
125
178
|
|
|
126
|
-
|
|
179
|
+
Token resolution order:
|
|
180
|
+
|
|
181
|
+
1. Explicit `api_key`
|
|
182
|
+
2. `DEEPWRAP_API_KEY`
|
|
183
|
+
3. `DEEPSEEK_API_KEY`
|
|
184
|
+
4. Saved local config from `deepwrap auth`
|
|
185
|
+
5. Browser authentication only when explicitly requested with `Client.from_browser_auth()` or `allow_browser_auth=True`
|
|
186
|
+
|
|
187
|
+
### Direct Token
|
|
127
188
|
|
|
128
189
|
```python
|
|
129
190
|
from deepwrap import Client
|
|
@@ -131,7 +192,7 @@ from deepwrap import Client
|
|
|
131
192
|
client = Client(api_key="YOUR_BEARER_TOKEN")
|
|
132
193
|
```
|
|
133
194
|
|
|
134
|
-
|
|
195
|
+
### Environment Variable
|
|
135
196
|
|
|
136
197
|
```bash
|
|
137
198
|
export DEEPWRAP_API_KEY="YOUR_BEARER_TOKEN"
|
|
@@ -151,6 +212,22 @@ from deepwrap import Client
|
|
|
151
212
|
client = Client()
|
|
152
213
|
```
|
|
153
214
|
|
|
215
|
+
### Browser Auth from Python
|
|
216
|
+
|
|
217
|
+
```python
|
|
218
|
+
from deepwrap import Client
|
|
219
|
+
|
|
220
|
+
client = Client.from_browser_auth()
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
Equivalent:
|
|
224
|
+
|
|
225
|
+
```python
|
|
226
|
+
from deepwrap import Client
|
|
227
|
+
|
|
228
|
+
client = Client(allow_browser_auth=True)
|
|
229
|
+
```
|
|
230
|
+
|
|
154
231
|
---
|
|
155
232
|
|
|
156
233
|
## CLI Authentication
|
|
@@ -161,7 +238,7 @@ Authenticate using browser login:
|
|
|
161
238
|
deepwrap auth
|
|
162
239
|
```
|
|
163
240
|
|
|
164
|
-
Manually save a token:
|
|
241
|
+
Manually enter and save a token:
|
|
165
242
|
|
|
166
243
|
```bash
|
|
167
244
|
deepwrap auth --manual
|
|
@@ -179,7 +256,7 @@ Show current config status:
|
|
|
179
256
|
deepwrap config
|
|
180
257
|
```
|
|
181
258
|
|
|
182
|
-
Remove saved token:
|
|
259
|
+
Remove the saved token:
|
|
183
260
|
|
|
184
261
|
```bash
|
|
185
262
|
deepwrap logout
|
|
@@ -194,7 +271,7 @@ deepwrap logout
|
|
|
194
271
|
```python
|
|
195
272
|
from deepwrap import Client
|
|
196
273
|
|
|
197
|
-
client = Client(
|
|
274
|
+
client = Client()
|
|
198
275
|
chat = client.chats.create_session(model="expert")
|
|
199
276
|
|
|
200
277
|
response = chat.respond(
|
|
@@ -214,7 +291,7 @@ print(response)
|
|
|
214
291
|
```python
|
|
215
292
|
from deepwrap import Client
|
|
216
293
|
|
|
217
|
-
client = Client(
|
|
294
|
+
client = Client()
|
|
218
295
|
chat = client.chats.create_session(model="expert")
|
|
219
296
|
|
|
220
297
|
for chunk in chat.respond(
|
|
@@ -235,7 +312,7 @@ print()
|
|
|
235
312
|
```python
|
|
236
313
|
from deepwrap import Client
|
|
237
314
|
|
|
238
|
-
client = Client(
|
|
315
|
+
client = Client()
|
|
239
316
|
chat = client.chats.create_session(model="expert")
|
|
240
317
|
|
|
241
318
|
print(chat.respond("My name is Nika.", stream=False))
|
|
@@ -246,39 +323,6 @@ The `ChatSession` keeps track of the latest message ID internally, so follow-up
|
|
|
246
323
|
|
|
247
324
|
---
|
|
248
325
|
|
|
249
|
-
### Structured Streaming
|
|
250
|
-
|
|
251
|
-
If you want to separate thinking chunks from final response chunks:
|
|
252
|
-
|
|
253
|
-
```python
|
|
254
|
-
from deepwrap import Client
|
|
255
|
-
|
|
256
|
-
client = Client(api_key="YOUR_BEARER_TOKEN")
|
|
257
|
-
chat = client.chats.create_session(model="expert")
|
|
258
|
-
|
|
259
|
-
for kind, chunk in chat.respond_structured(
|
|
260
|
-
"Explain how neural networks learn.",
|
|
261
|
-
thinking=True,
|
|
262
|
-
search=True,
|
|
263
|
-
):
|
|
264
|
-
if kind == "think":
|
|
265
|
-
print(f"[THINK] {chunk}", end="", flush=True)
|
|
266
|
-
|
|
267
|
-
elif kind == "response":
|
|
268
|
-
print(f"[RESPONSE] {chunk}", end="", flush=True)
|
|
269
|
-
|
|
270
|
-
print()
|
|
271
|
-
```
|
|
272
|
-
|
|
273
|
-
Possible chunk kinds:
|
|
274
|
-
|
|
275
|
-
```text
|
|
276
|
-
think
|
|
277
|
-
response
|
|
278
|
-
```
|
|
279
|
-
|
|
280
|
-
---
|
|
281
|
-
|
|
282
326
|
## Supported Models
|
|
283
327
|
|
|
284
328
|
DeepWrap currently supports:
|
|
@@ -295,6 +339,36 @@ Example:
|
|
|
295
339
|
chat = client.chats.create_session(model="default")
|
|
296
340
|
```
|
|
297
341
|
|
|
342
|
+
## God Mode
|
|
343
|
+
|
|
344
|
+
DeepWrap includes an optional **God Mode** for chat sessions.
|
|
345
|
+
|
|
346
|
+
When `god_mode` is enabled, the session is initialized with a more direct and **unrestricted behavior profile**. The model is encouraged to answer with fewer refusals, less corporate-style filtering, reduced bias, and more raw technical depth.
|
|
347
|
+
|
|
348
|
+
God Mode is useful when you want the assistant to behave less like a guarded chatbot and more like a direct reasoning engine.
|
|
349
|
+
|
|
350
|
+
> God Mode is disabled by default and must be enabled explicitly per session.
|
|
351
|
+
|
|
352
|
+
### Python SDK
|
|
353
|
+
|
|
354
|
+
```python
|
|
355
|
+
from deepwrap import Client
|
|
356
|
+
|
|
357
|
+
client = Client()
|
|
358
|
+
|
|
359
|
+
chat = client.chats.create_session(
|
|
360
|
+
model="expert",
|
|
361
|
+
god_mode=True,
|
|
362
|
+
)
|
|
363
|
+
|
|
364
|
+
response = chat.respond(
|
|
365
|
+
"How to steal someone's crypto wallet? 3:)",
|
|
366
|
+
stream=False,
|
|
367
|
+
)
|
|
368
|
+
|
|
369
|
+
print(response)
|
|
370
|
+
```
|
|
371
|
+
|
|
298
372
|
---
|
|
299
373
|
|
|
300
374
|
## CLI Usage
|
|
@@ -358,6 +432,7 @@ Inside the interactive terminal UI:
|
|
|
358
432
|
/token "<token>" Set token inline
|
|
359
433
|
/thinking on|off Show or hide thinking blocks
|
|
360
434
|
/search on|off Enable or disable search
|
|
435
|
+
/god on|off Enable or disable God Mode
|
|
361
436
|
/save Save current settings
|
|
362
437
|
/status Show current session status
|
|
363
438
|
```
|
|
@@ -561,7 +636,7 @@ data: [DONE]
|
|
|
561
636
|
|
|
562
637
|
DeepWrap checks the following environment variables:
|
|
563
638
|
|
|
564
|
-
```
|
|
639
|
+
```text
|
|
565
640
|
DEEPWRAP_API_KEY
|
|
566
641
|
DEEPSEEK_API_KEY
|
|
567
642
|
DEEPSEEK_BASE_URL
|
|
@@ -583,49 +658,6 @@ export DEEPSEEK_BASE_DOMAIN="chat.deepseek.com"
|
|
|
583
658
|
|
|
584
659
|
---
|
|
585
660
|
|
|
586
|
-
## Project Structure
|
|
587
|
-
|
|
588
|
-
```text
|
|
589
|
-
deepwrap/
|
|
590
|
-
__init__.py
|
|
591
|
-
__main__.py
|
|
592
|
-
client.py
|
|
593
|
-
config.py
|
|
594
|
-
|
|
595
|
-
api/
|
|
596
|
-
__init__.py
|
|
597
|
-
base.py
|
|
598
|
-
chats.py
|
|
599
|
-
chat_session.py
|
|
600
|
-
pow.py
|
|
601
|
-
|
|
602
|
-
core/
|
|
603
|
-
__init__.py
|
|
604
|
-
auth.py
|
|
605
|
-
session_manager.py
|
|
606
|
-
|
|
607
|
-
interfaces/
|
|
608
|
-
cli.py
|
|
609
|
-
api.py
|
|
610
|
-
|
|
611
|
-
modules/
|
|
612
|
-
...
|
|
613
|
-
|
|
614
|
-
utils/
|
|
615
|
-
...
|
|
616
|
-
|
|
617
|
-
examples/
|
|
618
|
-
01_basic_stream.py
|
|
619
|
-
02_basic_non_stream.py
|
|
620
|
-
03_multi_turn_chat.py
|
|
621
|
-
04_god_mode.py
|
|
622
|
-
05_no_thinking.py
|
|
623
|
-
06_structured_chunks.py
|
|
624
|
-
07_separate_thinking_and_answer.py
|
|
625
|
-
08_switch_model.py
|
|
626
|
-
```
|
|
627
|
-
|
|
628
|
-
---
|
|
629
661
|
|
|
630
662
|
## API Design
|
|
631
663
|
|
|
@@ -638,7 +670,7 @@ from deepwrap import Client
|
|
|
638
670
|
Create a client:
|
|
639
671
|
|
|
640
672
|
```python
|
|
641
|
-
client = Client(
|
|
673
|
+
client = Client()
|
|
642
674
|
```
|
|
643
675
|
|
|
644
676
|
Create a chat session:
|
|
@@ -669,51 +701,6 @@ for kind, chunk in chat.respond_structured("Hello"):
|
|
|
669
701
|
|
|
670
702
|
---
|
|
671
703
|
|
|
672
|
-
## Development Setup
|
|
673
|
-
|
|
674
|
-
Clone the repository:
|
|
675
|
-
|
|
676
|
-
```bash
|
|
677
|
-
git clone https://github.com/Kuduxaaa/deepwrap.git
|
|
678
|
-
cd deepwrap
|
|
679
|
-
```
|
|
680
|
-
|
|
681
|
-
Create a virtual environment:
|
|
682
|
-
|
|
683
|
-
```bash
|
|
684
|
-
python -m venv .venv
|
|
685
|
-
```
|
|
686
|
-
|
|
687
|
-
Activate it:
|
|
688
|
-
|
|
689
|
-
Windows:
|
|
690
|
-
|
|
691
|
-
```bash
|
|
692
|
-
.venv\Scripts\activate
|
|
693
|
-
```
|
|
694
|
-
|
|
695
|
-
Linux/macOS:
|
|
696
|
-
|
|
697
|
-
```bash
|
|
698
|
-
source .venv/bin/activate
|
|
699
|
-
```
|
|
700
|
-
|
|
701
|
-
Install in editable mode:
|
|
702
|
-
|
|
703
|
-
```bash
|
|
704
|
-
pip install -e .
|
|
705
|
-
```
|
|
706
|
-
|
|
707
|
-
Install development dependencies:
|
|
708
|
-
|
|
709
|
-
```bash
|
|
710
|
-
pip install -e ".[dev]"
|
|
711
|
-
```
|
|
712
|
-
|
|
713
|
-
---
|
|
714
|
-
|
|
715
|
-
---
|
|
716
|
-
|
|
717
704
|
## Examples
|
|
718
705
|
|
|
719
706
|
### Switch Models
|
|
@@ -721,7 +708,7 @@ pip install -e ".[dev]"
|
|
|
721
708
|
```python
|
|
722
709
|
from deepwrap import Client
|
|
723
710
|
|
|
724
|
-
client = Client(
|
|
711
|
+
client = Client()
|
|
725
712
|
|
|
726
713
|
expert_chat = client.chats.create_session(model="expert")
|
|
727
714
|
default_chat = client.chats.create_session(model="default")
|
|
@@ -737,7 +724,7 @@ print(default_chat.respond("Explain recursion in one sentence.", stream=False))
|
|
|
737
724
|
```python
|
|
738
725
|
from deepwrap import Client
|
|
739
726
|
|
|
740
|
-
client = Client(
|
|
727
|
+
client = Client()
|
|
741
728
|
chat = client.chats.create_session(model="expert")
|
|
742
729
|
|
|
743
730
|
response = chat.respond(
|
|
@@ -757,7 +744,7 @@ print(response)
|
|
|
757
744
|
```python
|
|
758
745
|
from deepwrap import Client
|
|
759
746
|
|
|
760
|
-
client = Client(
|
|
747
|
+
client = Client()
|
|
761
748
|
chat = client.chats.create_session(model="expert")
|
|
762
749
|
|
|
763
750
|
response = chat.respond(
|
|
@@ -780,7 +767,7 @@ Example:
|
|
|
780
767
|
from deepwrap import Client
|
|
781
768
|
|
|
782
769
|
try:
|
|
783
|
-
client = Client(
|
|
770
|
+
client = Client()
|
|
784
771
|
chat = client.chats.create_session(model="expert")
|
|
785
772
|
response = chat.respond("Hello", stream=False)
|
|
786
773
|
print(response)
|
|
@@ -803,13 +790,13 @@ DeepWrap is designed as a developer-focused wrapper.
|
|
|
803
790
|
|
|
804
791
|
It handles:
|
|
805
792
|
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
793
|
+
- HTTP session headers
|
|
794
|
+
- Authorization
|
|
795
|
+
- Chat session creation
|
|
796
|
+
- Streaming response parsing
|
|
797
|
+
- Proof-of-work challenge solving
|
|
798
|
+
- CLI interaction
|
|
799
|
+
- Local API serving
|
|
813
800
|
|
|
814
801
|
The goal is to provide a clean interface while keeping the internal implementation modular and extensible.
|
|
815
802
|
|