ellipsis-dev 0.1.0__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.
@@ -0,0 +1,216 @@
1
+ .vscode
2
+ .idea
3
+ cdk.out/
4
+ secrets/
5
+ # The dashboard's secrets router is source, not secret material.
6
+ !ellipsis/src/public_api/routers/frontend/secrets/
7
+ **/.kubeconfig
8
+ !jest.config.js
9
+ *.d.ts
10
+ !frontend/src/types/*.d.ts
11
+ **/node_modules
12
+ **/.env.*
13
+ .mypy_cache/**
14
+ !ellipsis/.env.beta
15
+ .claude/settings.local.json
16
+ .claude/worktrees/
17
+
18
+ #
19
+ **/.next
20
+
21
+ # TypeScript incremental build cache (tsc --incremental), any workspace member
22
+ *.tsbuildinfo
23
+
24
+
25
+ # Byte-compiled / optimized / DLL files
26
+ __pycache__/
27
+ *.py[cod]
28
+ *$py.class
29
+
30
+ # C extensions
31
+ *.so
32
+
33
+ # Distribution / packaging
34
+ .Python
35
+ build/
36
+ develop-eggs/
37
+ dist/
38
+ downloads/
39
+ eggs/
40
+ .eggs/
41
+ lib64/
42
+ parts/
43
+ sdist/
44
+ var/
45
+ wheels/
46
+ share/python-wheels/
47
+ *.egg-info/
48
+ .installed.cfg
49
+ *.egg
50
+ MANIFEST
51
+
52
+ # PyInstaller
53
+ # Usually these files are written by a python script from a template
54
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
55
+ *.manifest
56
+ *.spec
57
+
58
+ # Installer logs
59
+ pip-log.txt
60
+ pip-delete-this-directory.txt
61
+
62
+ # Unit test / coverage reports
63
+ htmlcov/
64
+ .tox/
65
+ .nox/
66
+ .coverage
67
+ .coverage.*
68
+ .cache
69
+ nosetests.xml
70
+ coverage.xml
71
+ *.cover
72
+ *.py,cover
73
+ .hypothesis/
74
+ .pytest_cache/
75
+ cover/
76
+
77
+ # Translations
78
+ *.mo
79
+ *.pot
80
+
81
+ # Django stuff:
82
+ *.log
83
+ local_settings.py
84
+ db.sqlite3
85
+ db.sqlite3-journal
86
+
87
+ # Flask stuff:
88
+ instance/
89
+ .webassets-cache
90
+
91
+ # Scrapy stuff:
92
+ .scrapy
93
+
94
+ # Sphinx documentation
95
+ docs/_build/
96
+
97
+ # PyBuilder
98
+ .pybuilder/
99
+ target/
100
+
101
+ # Jupyter Notebook
102
+ .ipynb_checkpoints
103
+
104
+ # IPython
105
+ profile_default/
106
+ ipython_config.py
107
+
108
+ # pyenv
109
+ # For a library or package, you might want to ignore these files since the code is
110
+ # intended to run in multiple environments; otherwise, check them in:
111
+ # .python-version
112
+
113
+ # pipenv
114
+ # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
115
+ # However, in case of collaboration, if having platform-specific dependencies or dependencies
116
+ # having no cross-platform support, pipenv may install dependencies that don't work, or not
117
+ # install all needed dependencies.
118
+ #Pipfile.lock
119
+
120
+ # PEP 582; used by e.g. github.com/David-OConnor/pyflow
121
+ __pypackages__/
122
+
123
+ # Celery stuff
124
+ celerybeat-schedule
125
+ celerybeat.pid
126
+
127
+ # SageMath parsed files
128
+ *.sage.py
129
+
130
+ # Environments
131
+ .env
132
+ .venv
133
+ env/
134
+ venv/
135
+ ENV/
136
+ env.bak/
137
+ venv.bak/
138
+
139
+ # Spyder project settings
140
+ .spyderproject
141
+ .spyproject
142
+
143
+ # Rope project settings
144
+ .ropeproject
145
+
146
+ # mkdocs documentation
147
+ /site
148
+
149
+ # mypy
150
+ .mypy_cache/
151
+ .dmypy.json
152
+ dmypy.json
153
+
154
+ # Pyre type checker
155
+ .pyre/
156
+
157
+ # pytype static type analyzer
158
+ .pytype/
159
+
160
+ # Cython debug symbols
161
+ cython_debug/
162
+
163
+ # Created by https://www.toptal.com/developers/gitignore/api/macos
164
+ # Edit at https://www.toptal.com/developers/gitignore?templates=macos
165
+
166
+ ### macOS ###
167
+ # General
168
+ .DS_Store
169
+ .AppleDouble
170
+ .LSOverride
171
+
172
+ # Icon must end with two \r
173
+ Icon
174
+
175
+
176
+ # Thumbnails
177
+ ._*
178
+
179
+ # Files that might appear in the root of a volume
180
+ .DocumentRevisions-V100
181
+ .fseventsd
182
+ .Spotlight-V100
183
+ .TemporaryItems
184
+ .Trashes
185
+ .VolumeIcon.icns
186
+ .com.apple.timemachine.donotpresent
187
+
188
+ # Directories potentially created on remote AFP share
189
+ .AppleDB
190
+ .AppleDesktop
191
+ Network Trash Folder
192
+ Temporary Items
193
+ .apdisk
194
+
195
+ ### macOS Patch ###
196
+ # iCloud generated files
197
+ *.icloud
198
+
199
+ # End of https://www.toptal.com/developers/gitignore/api/macos
200
+
201
+ .pnpm-store/
202
+
203
+ # Local email preview renders (brand/emails/render.mjs artifacts)
204
+ brand/emails/*.preview.html
205
+ brand/emails/*.preview.png
206
+ scripts/spikes/**/*.pem
207
+
208
+ # GTM contact dumps — real customer emails (PII), never commit
209
+ documents/gtm/contacts/
210
+
211
+ # YC founder outreach dumps — customer PII joined with YC-confidential
212
+ # Bookface roster data, never commit
213
+ documents/gtm/yc/customers/founder_contacts.csv
214
+
215
+ # One-off inspiration dumps land here; keep future ones out of git sweeps.
216
+ brand/advertising_inspiration/
@@ -0,0 +1,39 @@
1
+ Metadata-Version: 2.5
2
+ Name: ellipsis-dev
3
+ Version: 0.1.0
4
+ Summary: Python SDK for the Ellipsis agents platform: every /v1 operation, sync and async.
5
+ Project-URL: Homepage, https://www.ellipsis.dev
6
+ Project-URL: Documentation, https://www.ellipsis.dev/docs/api
7
+ License-Expression: MIT
8
+ Requires-Python: >=3.10
9
+ Requires-Dist: httpx<1,>=0.25.0
10
+ Requires-Dist: pydantic<3,>=2.7
11
+ Provides-Extra: stream
12
+ Requires-Dist: websockets>=12; extra == 'stream'
13
+ Description-Content-Type: text/markdown
14
+
15
+ # ellipsis-dev — the Ellipsis Python SDK
16
+
17
+ Drive Ellipsis agent sessions from Python. Every `/v1` operation, sync and
18
+ async, generated from the platform's committed OpenAPI spec.
19
+
20
+ ```python
21
+ from ellipsis import Ellipsis
22
+
23
+ client = Ellipsis(api_key="...") # an API key from app.ellipsis.dev
24
+
25
+ session = client.sessions.start(prompt="Fix the flaky test in ci/").session
26
+ for s in client.sessions.list(): # cursor pagination walks every page
27
+ print(s.id, s.status)
28
+ ```
29
+
30
+ Async is the same surface:
31
+
32
+ ```python
33
+ from ellipsis import AsyncEllipsis
34
+
35
+ async with AsyncEllipsis(api_key="...") as client:
36
+ me = await client.me()
37
+ ```
38
+
39
+ Docs: https://www.ellipsis.dev/docs/api
@@ -0,0 +1,25 @@
1
+ # ellipsis-dev — the Ellipsis Python SDK
2
+
3
+ Drive Ellipsis agent sessions from Python. Every `/v1` operation, sync and
4
+ async, generated from the platform's committed OpenAPI spec.
5
+
6
+ ```python
7
+ from ellipsis import Ellipsis
8
+
9
+ client = Ellipsis(api_key="...") # an API key from app.ellipsis.dev
10
+
11
+ session = client.sessions.start(prompt="Fix the flaky test in ci/").session
12
+ for s in client.sessions.list(): # cursor pagination walks every page
13
+ print(s.id, s.status)
14
+ ```
15
+
16
+ Async is the same surface:
17
+
18
+ ```python
19
+ from ellipsis import AsyncEllipsis
20
+
21
+ async with AsyncEllipsis(api_key="...") as client:
22
+ me = await client.me()
23
+ ```
24
+
25
+ Docs: https://www.ellipsis.dev/docs/api
@@ -0,0 +1,25 @@
1
+ [build-system]
2
+ requires = ["hatchling"]
3
+ build-backend = "hatchling.build"
4
+
5
+ [project]
6
+ name = "ellipsis-dev"
7
+ version = "0.1.0"
8
+ description = "Python SDK for the Ellipsis agents platform: every /v1 operation, sync and async."
9
+ readme = "README.md"
10
+ license = "MIT"
11
+ requires-python = ">=3.10"
12
+ dependencies = [
13
+ "httpx>=0.25.0,<1",
14
+ "pydantic>=2.7,<3",
15
+ ]
16
+
17
+ [project.optional-dependencies]
18
+ stream = ["websockets>=12"]
19
+
20
+ [project.urls]
21
+ Homepage = "https://www.ellipsis.dev"
22
+ Documentation = "https://www.ellipsis.dev/docs/api"
23
+
24
+ [tool.hatch.build.targets.wheel]
25
+ packages = ["src/ellipsis"]
@@ -0,0 +1,66 @@
1
+ """The Ellipsis Python SDK.
2
+
3
+ from ellipsis import Ellipsis
4
+
5
+ client = Ellipsis(api_key=...)
6
+ session = client.sessions.start(prompt="...")
7
+
8
+ `Ellipsis` is sync, `AsyncEllipsis` is async; both cover every /v1 operation.
9
+ The generated modules (`models`, `_client`) are emitted from the committed
10
+ OpenAPI spec by `ellipsis.pyscripts.sdk.generate_sdks` in the monorepo.
11
+ """
12
+
13
+ from . import frames, models
14
+ from ._client import AsyncEllipsis, Ellipsis
15
+ from ._errors import (
16
+ APIError,
17
+ AuthenticationError,
18
+ ConflictError,
19
+ EllipsisError,
20
+ ForbiddenError,
21
+ NotFoundError,
22
+ RateLimitError,
23
+ ServerError,
24
+ TransportError,
25
+ UnprocessableError,
26
+ )
27
+ from ._pagination import AsyncPage, SyncPage
28
+ from ._session_handle import (
29
+ TERMINAL_STATUSES,
30
+ AsyncSessionHandle,
31
+ SessionHandle,
32
+ )
33
+ from ._stream import (
34
+ SESSION_STREAM_PROTOCOL_VERSION,
35
+ StreamAuthError,
36
+ StreamOutcome,
37
+ StreamUnavailableError,
38
+ stream_session,
39
+ )
40
+
41
+ __all__ = [
42
+ "APIError",
43
+ "AsyncEllipsis",
44
+ "AsyncPage",
45
+ "AuthenticationError",
46
+ "ConflictError",
47
+ "Ellipsis",
48
+ "EllipsisError",
49
+ "ForbiddenError",
50
+ "NotFoundError",
51
+ "RateLimitError",
52
+ "ServerError",
53
+ "SyncPage",
54
+ "TransportError",
55
+ "SESSION_STREAM_PROTOCOL_VERSION",
56
+ "TERMINAL_STATUSES",
57
+ "AsyncSessionHandle",
58
+ "SessionHandle",
59
+ "StreamAuthError",
60
+ "StreamOutcome",
61
+ "StreamUnavailableError",
62
+ "UnprocessableError",
63
+ "frames",
64
+ "models",
65
+ "stream_session",
66
+ ]