sibyl-dev 0.2.0__tar.gz → 0.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.
- {sibyl_dev-0.2.0 → sibyl_dev-0.2.2}/PKG-INFO +1 -1
- {sibyl_dev-0.2.0 → sibyl_dev-0.2.2}/src/sibyl_cli/local.py +8 -36
- {sibyl_dev-0.2.0 → sibyl_dev-0.2.2}/.gitignore +0 -0
- {sibyl_dev-0.2.0 → sibyl_dev-0.2.2}/README.md +0 -0
- {sibyl_dev-0.2.0 → sibyl_dev-0.2.2}/pyproject.toml +0 -0
- {sibyl_dev-0.2.0 → sibyl_dev-0.2.2}/src/sibyl_cli/__init__.py +0 -0
- {sibyl_dev-0.2.0 → sibyl_dev-0.2.2}/src/sibyl_cli/auth.py +0 -0
- {sibyl_dev-0.2.0 → sibyl_dev-0.2.2}/src/sibyl_cli/auth_store.py +0 -0
- {sibyl_dev-0.2.0 → sibyl_dev-0.2.2}/src/sibyl_cli/client.py +0 -0
- {sibyl_dev-0.2.0 → sibyl_dev-0.2.2}/src/sibyl_cli/common.py +0 -0
- {sibyl_dev-0.2.0 → sibyl_dev-0.2.2}/src/sibyl_cli/config_cmd.py +0 -0
- {sibyl_dev-0.2.0 → sibyl_dev-0.2.2}/src/sibyl_cli/config_store.py +0 -0
- {sibyl_dev-0.2.0 → sibyl_dev-0.2.2}/src/sibyl_cli/context.py +0 -0
- {sibyl_dev-0.2.0 → sibyl_dev-0.2.2}/src/sibyl_cli/crawl.py +0 -0
- {sibyl_dev-0.2.0 → sibyl_dev-0.2.2}/src/sibyl_cli/document.py +0 -0
- {sibyl_dev-0.2.0 → sibyl_dev-0.2.2}/src/sibyl_cli/entity.py +0 -0
- {sibyl_dev-0.2.0 → sibyl_dev-0.2.2}/src/sibyl_cli/epic.py +0 -0
- {sibyl_dev-0.2.0 → sibyl_dev-0.2.2}/src/sibyl_cli/explore.py +0 -0
- {sibyl_dev-0.2.0 → sibyl_dev-0.2.2}/src/sibyl_cli/main.py +0 -0
- {sibyl_dev-0.2.0 → sibyl_dev-0.2.2}/src/sibyl_cli/onboarding.py +0 -0
- {sibyl_dev-0.2.0 → sibyl_dev-0.2.2}/src/sibyl_cli/org.py +0 -0
- {sibyl_dev-0.2.0 → sibyl_dev-0.2.2}/src/sibyl_cli/project.py +0 -0
- {sibyl_dev-0.2.0 → sibyl_dev-0.2.2}/src/sibyl_cli/source.py +0 -0
- {sibyl_dev-0.2.0 → sibyl_dev-0.2.2}/src/sibyl_cli/state.py +0 -0
- {sibyl_dev-0.2.0 → sibyl_dev-0.2.2}/src/sibyl_cli/task.py +0 -0
- {sibyl_dev-0.2.0 → sibyl_dev-0.2.2}/tests/__init__.py +0 -0
- {sibyl_dev-0.2.0 → sibyl_dev-0.2.2}/tests/test_auth_store.py +0 -0
- {sibyl_dev-0.2.0 → sibyl_dev-0.2.2}/tests/test_config_store.py +0 -0
- {sibyl_dev-0.2.0 → sibyl_dev-0.2.2}/tests/test_epic.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: sibyl-dev
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.2
|
|
4
4
|
Summary: CLI for Sibyl - Collective Intelligence Runtime for AI agents
|
|
5
5
|
Project-URL: Homepage, https://github.com/hyperb1iss/sibyl
|
|
6
6
|
Project-URL: Repository, https://github.com/hyperb1iss/sibyl
|
|
@@ -297,41 +297,10 @@ def run_compose(args: list[str], capture: bool = False) -> subprocess.CompletedP
|
|
|
297
297
|
return subprocess.run(cmd, check=False)
|
|
298
298
|
|
|
299
299
|
|
|
300
|
-
def
|
|
301
|
-
"""
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
console.print("[dim]Sibyl needs API keys for semantic search and entity extraction.[/dim]")
|
|
305
|
-
console.print()
|
|
306
|
-
|
|
307
|
-
# OpenAI
|
|
308
|
-
console.print(
|
|
309
|
-
f"[{NEON_CYAN}]OpenAI API Key[/{NEON_CYAN}] [dim](https://platform.openai.com/api-keys)[/dim]"
|
|
310
|
-
)
|
|
311
|
-
openai_key = typer.prompt(" Enter key", hide_input=False)
|
|
312
|
-
|
|
313
|
-
if not openai_key:
|
|
314
|
-
error("OpenAI API key is required")
|
|
315
|
-
raise typer.Exit(1)
|
|
316
|
-
|
|
317
|
-
if not openai_key.startswith("sk-"):
|
|
318
|
-
warn("OpenAI key should start with 'sk-'")
|
|
319
|
-
|
|
320
|
-
console.print()
|
|
321
|
-
|
|
322
|
-
# Anthropic
|
|
323
|
-
console.print(
|
|
324
|
-
f"[{NEON_CYAN}]Anthropic API Key[/{NEON_CYAN}] [dim](https://console.anthropic.com/settings/keys)[/dim]"
|
|
325
|
-
)
|
|
326
|
-
anthropic_key = typer.prompt(" Enter key", hide_input=False)
|
|
327
|
-
|
|
328
|
-
if not anthropic_key:
|
|
329
|
-
error("Anthropic API key is required")
|
|
330
|
-
raise typer.Exit(1)
|
|
331
|
-
|
|
332
|
-
if not anthropic_key.startswith("sk-ant-"):
|
|
333
|
-
warn("Anthropic key should start with 'sk-ant-'")
|
|
334
|
-
|
|
300
|
+
def get_api_keys_from_env() -> tuple[str, str]:
|
|
301
|
+
"""Get API keys from environment variables."""
|
|
302
|
+
openai_key = os.environ.get("OPENAI_API_KEY", "")
|
|
303
|
+
anthropic_key = os.environ.get("ANTHROPIC_API_KEY", "")
|
|
335
304
|
return openai_key, anthropic_key
|
|
336
305
|
|
|
337
306
|
|
|
@@ -399,12 +368,15 @@ def start(
|
|
|
399
368
|
if not SIBYL_LOCAL_ENV.exists():
|
|
400
369
|
info("First run - configuring Sibyl...")
|
|
401
370
|
|
|
402
|
-
openai_key, anthropic_key =
|
|
371
|
+
openai_key, anthropic_key = get_api_keys_from_env()
|
|
403
372
|
jwt_secret = secrets.token_hex(32)
|
|
404
373
|
|
|
405
374
|
write_env_file(openai_key, anthropic_key, jwt_secret)
|
|
406
375
|
success("Configuration saved")
|
|
407
376
|
|
|
377
|
+
if not openai_key or not anthropic_key:
|
|
378
|
+
warn("API keys not found in environment - configure via web UI")
|
|
379
|
+
|
|
408
380
|
# Write compose file (always, in case of updates)
|
|
409
381
|
write_compose_file()
|
|
410
382
|
|
|
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
|