devin-cli 1.2.1__tar.gz → 1.2.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.
- {devin_cli-1.2.1 → devin_cli-1.2.2}/PKG-INFO +1 -1
- {devin_cli-1.2.1 → devin_cli-1.2.2}/pyproject.toml +1 -1
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/api/v1/sessions.py +2 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/api/v3/sessions.py +4 -1
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/cli.py +7 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/.github/workflows/pypi-publish.yml +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/.gitignore +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/CHANGELOG.md +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/LICENSE +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/README.md +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/assets/logo.png +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/generate_facades.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/setup.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/__init__.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/api/__init__.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/api/attachments.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/api/client.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/api/consumption.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/api/knowledge.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/api/members.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/api/organizations.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/api/playbooks.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/api/repositories.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/api/schedules.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/api/secrets.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/api/sessions.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/api/v1/__init__.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/api/v1/attachments.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/api/v1/knowledge.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/api/v1/playbooks.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/api/v1/secrets.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/api/v3/__init__.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/api/v3/attachments.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/api/v3/consumption.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/api/v3/knowledge.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/api/v3/members.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/api/v3/organizations.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/api/v3/playbooks.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/api/v3/repositories.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/api/v3/schedules.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/api/v3/secrets.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/src/devin_cli/config.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/tests/__init__.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/tests/conftest.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/tests/test_api/test_attachments.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/tests/test_api/test_knowledge.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/tests/test_api/test_playbooks.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/tests/test_api/test_repositories.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/tests/test_api/test_schedules.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/tests/test_api/test_secrets.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/tests/test_api/test_sessions.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/tests/test_cli.py +0 -0
- {devin_cli-1.2.1 → devin_cli-1.2.2}/tests/test_config.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: devin-cli
|
|
3
|
-
Version: 1.2.
|
|
3
|
+
Version: 1.2.2
|
|
4
4
|
Summary: Unofficial CLI for Devin AI - The first AI Software Engineer
|
|
5
5
|
Project-URL: Homepage, https://github.com/revanthpobala/devin-cli
|
|
6
6
|
Project-URL: Repository, https://github.com/revanthpobala/devin-cli.git
|
|
@@ -25,6 +25,8 @@ def create_session(
|
|
|
25
25
|
attachment_urls: Optional[List[str]] = None,
|
|
26
26
|
create_as_user_id: Optional[str] = None,
|
|
27
27
|
child_playbook_id: Optional[str] = None,
|
|
28
|
+
bypass_approval: bool = False,
|
|
29
|
+
structured_output_schema: Optional[str] = None,
|
|
28
30
|
):
|
|
29
31
|
data = {
|
|
30
32
|
"prompt": prompt,
|
|
@@ -23,6 +23,7 @@ def create_session(
|
|
|
23
23
|
tags: Optional[List[str]] = None,
|
|
24
24
|
title: Optional[str] = None,
|
|
25
25
|
create_as_user_id: Optional[str] = None,
|
|
26
|
+
structured_output_schema: Optional[str] = None,
|
|
26
27
|
):
|
|
27
28
|
data = {
|
|
28
29
|
"prompt": prompt,
|
|
@@ -54,7 +55,9 @@ def create_session(
|
|
|
54
55
|
data["title"] = title
|
|
55
56
|
if create_as_user_id:
|
|
56
57
|
data["create_as_user_id"] = create_as_user_id
|
|
57
|
-
|
|
58
|
+
if structured_output_schema:
|
|
59
|
+
data["structured_output_schema"] = structured_output_schema
|
|
60
|
+
|
|
58
61
|
return client.post("sessions", json=data)
|
|
59
62
|
|
|
60
63
|
def get_session(session_id: str):
|
|
@@ -165,6 +165,8 @@ def create_session_cmd(
|
|
|
165
165
|
session_links: Optional[List[str]] = typer.Option(None, "--session-link", help="Session URLs to link as context (v3 only, repeatable)"),
|
|
166
166
|
attachment_urls: Optional[List[str]] = typer.Option(None, "--attachment-url", help="Attachment URLs to attach (v3 only, repeatable)"),
|
|
167
167
|
create_as_user_id: Optional[str] = typer.Option(None, "--create-as-user-id", help="Enterprise: create session on behalf of this user ID (v3 only)"),
|
|
168
|
+
bypass_approval: bool = typer.Option(False, "--bypass-approval", help="Skip UI approval step — child sessions start immediately (v3 only)"),
|
|
169
|
+
structured_output_schema: Optional[str] = typer.Option(None, "--structured-output-schema", help="JSON schema string for structured response output (v3 only)"),
|
|
168
170
|
force: bool = typer.Option(False, "--force", help="Force creation even if duplicate prompt is detected"),
|
|
169
171
|
wait: bool = typer.Option(False, "--wait", "-w", help="Block until the session reaches a terminal status"),
|
|
170
172
|
interval: int = typer.Option(5, "--interval", help="Polling interval in seconds when --wait is used"),
|
|
@@ -178,11 +180,14 @@ def create_session_cmd(
|
|
|
178
180
|
v3_only_used = [x for x, v in [
|
|
179
181
|
("--advanced-mode", advanced_mode),
|
|
180
182
|
("--playbook-id", playbook_id),
|
|
183
|
+
("--child-playbook-id", child_playbook_id),
|
|
181
184
|
("--repos", repos),
|
|
182
185
|
("--secret-ids", secret_ids),
|
|
183
186
|
("--session-links", session_links),
|
|
184
187
|
("--attachment-urls", attachment_urls),
|
|
185
188
|
("--create-as-user-id", create_as_user_id),
|
|
189
|
+
("--bypass-approval", bypass_approval or None),
|
|
190
|
+
("--structured-output-schema", structured_output_schema),
|
|
186
191
|
] if v]
|
|
187
192
|
if api_ver == "v1" and v3_only_used:
|
|
188
193
|
console.print(f"[bold yellow]Warning:[/bold yellow] The following flags are v3-only and will be ignored on a v1 profile: {', '.join(v3_only_used)}")
|
|
@@ -221,6 +226,8 @@ def create_session_cmd(
|
|
|
221
226
|
session_links=session_links or None,
|
|
222
227
|
attachment_urls=attachment_urls or None,
|
|
223
228
|
create_as_user_id=create_as_user_id,
|
|
229
|
+
bypass_approval=bypass_approval,
|
|
230
|
+
structured_output_schema=structured_output_schema,
|
|
224
231
|
)
|
|
225
232
|
sid = resp.get("session_id")
|
|
226
233
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|