sibyl-dev 0.2.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.
- sibyl_dev-0.2.0/.gitignore +89 -0
- sibyl_dev-0.2.0/PKG-INFO +111 -0
- sibyl_dev-0.2.0/README.md +85 -0
- sibyl_dev-0.2.0/pyproject.toml +95 -0
- sibyl_dev-0.2.0/src/sibyl_cli/__init__.py +31 -0
- sibyl_dev-0.2.0/src/sibyl_cli/auth.py +770 -0
- sibyl_dev-0.2.0/src/sibyl_cli/auth_store.py +230 -0
- sibyl_dev-0.2.0/src/sibyl_cli/client.py +908 -0
- sibyl_dev-0.2.0/src/sibyl_cli/common.py +230 -0
- sibyl_dev-0.2.0/src/sibyl_cli/config_cmd.py +146 -0
- sibyl_dev-0.2.0/src/sibyl_cli/config_store.py +648 -0
- sibyl_dev-0.2.0/src/sibyl_cli/context.py +458 -0
- sibyl_dev-0.2.0/src/sibyl_cli/crawl.py +429 -0
- sibyl_dev-0.2.0/src/sibyl_cli/document.py +171 -0
- sibyl_dev-0.2.0/src/sibyl_cli/entity.py +456 -0
- sibyl_dev-0.2.0/src/sibyl_cli/epic.py +1022 -0
- sibyl_dev-0.2.0/src/sibyl_cli/explore.py +315 -0
- sibyl_dev-0.2.0/src/sibyl_cli/local.py +586 -0
- sibyl_dev-0.2.0/src/sibyl_cli/main.py +441 -0
- sibyl_dev-0.2.0/src/sibyl_cli/onboarding.py +200 -0
- sibyl_dev-0.2.0/src/sibyl_cli/org.py +209 -0
- sibyl_dev-0.2.0/src/sibyl_cli/project.py +427 -0
- sibyl_dev-0.2.0/src/sibyl_cli/source.py +436 -0
- sibyl_dev-0.2.0/src/sibyl_cli/state.py +42 -0
- sibyl_dev-0.2.0/src/sibyl_cli/task.py +1019 -0
- sibyl_dev-0.2.0/tests/__init__.py +1 -0
- sibyl_dev-0.2.0/tests/test_auth_store.py +374 -0
- sibyl_dev-0.2.0/tests/test_config_store.py +268 -0
- sibyl_dev-0.2.0/tests/test_epic.py +185 -0
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
# Python
|
|
2
|
+
__pycache__/
|
|
3
|
+
*.py[cod]
|
|
4
|
+
*$py.class
|
|
5
|
+
*.so
|
|
6
|
+
.Python
|
|
7
|
+
build/
|
|
8
|
+
develop-eggs/
|
|
9
|
+
dist/
|
|
10
|
+
downloads/
|
|
11
|
+
eggs/
|
|
12
|
+
.eggs/
|
|
13
|
+
/lib/
|
|
14
|
+
/lib64/
|
|
15
|
+
parts/
|
|
16
|
+
sdist/
|
|
17
|
+
var/
|
|
18
|
+
wheels/
|
|
19
|
+
*.egg-info/
|
|
20
|
+
.installed.cfg
|
|
21
|
+
*.egg
|
|
22
|
+
|
|
23
|
+
# Virtual environments
|
|
24
|
+
.venv/
|
|
25
|
+
venv/
|
|
26
|
+
ENV/
|
|
27
|
+
env/
|
|
28
|
+
|
|
29
|
+
# Node
|
|
30
|
+
node_modules/
|
|
31
|
+
|
|
32
|
+
# VitePress
|
|
33
|
+
docs/.vitepress/cache/
|
|
34
|
+
docs/.vitepress/dist/
|
|
35
|
+
|
|
36
|
+
# IDE
|
|
37
|
+
.idea/
|
|
38
|
+
.vscode/
|
|
39
|
+
*.swp
|
|
40
|
+
*.swo
|
|
41
|
+
*~
|
|
42
|
+
|
|
43
|
+
# Testing
|
|
44
|
+
.coverage
|
|
45
|
+
coverage.xml
|
|
46
|
+
.pytest_cache/
|
|
47
|
+
htmlcov/
|
|
48
|
+
.tox/
|
|
49
|
+
.nox/
|
|
50
|
+
|
|
51
|
+
# MyPy
|
|
52
|
+
.mypy_cache/
|
|
53
|
+
.dmypy.json
|
|
54
|
+
dmypy.json
|
|
55
|
+
|
|
56
|
+
# Ruff
|
|
57
|
+
.ruff_cache/
|
|
58
|
+
|
|
59
|
+
# Environment
|
|
60
|
+
.env
|
|
61
|
+
.env.local
|
|
62
|
+
|
|
63
|
+
# Docker
|
|
64
|
+
falkordb_data/
|
|
65
|
+
|
|
66
|
+
# Kubernetes / Tilt
|
|
67
|
+
infra/local/secrets.yaml
|
|
68
|
+
.tiltbuild/
|
|
69
|
+
tilt_modules/
|
|
70
|
+
|
|
71
|
+
# OS
|
|
72
|
+
.DS_Store
|
|
73
|
+
Thumbs.db
|
|
74
|
+
|
|
75
|
+
# Logs
|
|
76
|
+
*.log
|
|
77
|
+
logs/
|
|
78
|
+
|
|
79
|
+
.serena
|
|
80
|
+
.coverage.*
|
|
81
|
+
|
|
82
|
+
# moon
|
|
83
|
+
.moon/cache
|
|
84
|
+
.moon/docker
|
|
85
|
+
|
|
86
|
+
# Backups and database dumps
|
|
87
|
+
backups/
|
|
88
|
+
*.sql
|
|
89
|
+
!docs/schemas/*.sql
|
sibyl_dev-0.2.0/PKG-INFO
ADDED
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: sibyl-dev
|
|
3
|
+
Version: 0.2.0
|
|
4
|
+
Summary: CLI for Sibyl - Collective Intelligence Runtime for AI agents
|
|
5
|
+
Project-URL: Homepage, https://github.com/hyperb1iss/sibyl
|
|
6
|
+
Project-URL: Repository, https://github.com/hyperb1iss/sibyl
|
|
7
|
+
Author-email: Stefanie Jane <stef@hyperbliss.tech>
|
|
8
|
+
License-Expression: Apache-2.0
|
|
9
|
+
Keywords: ai-agents,cli,knowledge-graph,mcp
|
|
10
|
+
Classifier: Development Status :: 3 - Alpha
|
|
11
|
+
Classifier: Environment :: Console
|
|
12
|
+
Classifier: Intended Audience :: Developers
|
|
13
|
+
Classifier: License :: OSI Approved :: Apache Software License
|
|
14
|
+
Classifier: Programming Language :: Python :: 3
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
16
|
+
Classifier: Typing :: Typed
|
|
17
|
+
Requires-Python: >=3.13
|
|
18
|
+
Requires-Dist: httpx>=0.27
|
|
19
|
+
Requires-Dist: pyjwt>=2.10
|
|
20
|
+
Requires-Dist: pyyaml>=6.0
|
|
21
|
+
Requires-Dist: rich>=13.0
|
|
22
|
+
Requires-Dist: sibyl-core
|
|
23
|
+
Requires-Dist: tomli-w>=1.2.0
|
|
24
|
+
Requires-Dist: typer>=0.20.0
|
|
25
|
+
Description-Content-Type: text/markdown
|
|
26
|
+
|
|
27
|
+
# sibyl-cli
|
|
28
|
+
|
|
29
|
+
Command-line interface for Sibyl. REST API client with Rich terminal output, designed for humans and AI agents.
|
|
30
|
+
|
|
31
|
+
## Quick Reference
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
# Install
|
|
35
|
+
uv tool install sibyl-cli # or: moon run install-cli
|
|
36
|
+
|
|
37
|
+
# Configure
|
|
38
|
+
sibyl config set server.url http://localhost:3334/api
|
|
39
|
+
sibyl auth login
|
|
40
|
+
|
|
41
|
+
# Link to project (scopes all commands)
|
|
42
|
+
sibyl project link <project_id>
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
## Core Commands
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
sibyl search "query" # Semantic search
|
|
49
|
+
sibyl add "title" "content" # Add knowledge
|
|
50
|
+
sibyl task list --status todo,doing # List tasks
|
|
51
|
+
sibyl task start <id> # Start task
|
|
52
|
+
sibyl task complete <id> --learnings "..." # Complete with learnings
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
## All Commands
|
|
56
|
+
|
|
57
|
+
| Command | Purpose |
|
|
58
|
+
|---------|---------|
|
|
59
|
+
| `search` | Semantic search |
|
|
60
|
+
| `add` | Add knowledge |
|
|
61
|
+
| `task` | Task lifecycle (list, start, complete, block, review) |
|
|
62
|
+
| `project` | Project management (list, link, create) |
|
|
63
|
+
| `epic` | Epic management (list, start, complete, roadmap) |
|
|
64
|
+
| `entity` | Entity CRUD |
|
|
65
|
+
| `explore` | Graph navigation (related, dependencies, communities) |
|
|
66
|
+
| `source` | Documentation sources (list, create, crawl) |
|
|
67
|
+
| `document` | View crawled documents |
|
|
68
|
+
| `auth` | Login, logout, API keys |
|
|
69
|
+
| `org` | Organization switching, member management |
|
|
70
|
+
| `config` | Configuration |
|
|
71
|
+
| `context` | Multi-server context management |
|
|
72
|
+
| `local` | Supabase-style local dev (start, stop, logs, reset) |
|
|
73
|
+
|
|
74
|
+
## Output Formats
|
|
75
|
+
|
|
76
|
+
```bash
|
|
77
|
+
sibyl task list # JSON (default, for scripts)
|
|
78
|
+
sibyl task list --table # Human-friendly
|
|
79
|
+
sibyl task list --csv # Spreadsheets
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
## Context System
|
|
83
|
+
|
|
84
|
+
```bash
|
|
85
|
+
# Override for single command
|
|
86
|
+
sibyl --context myproject task list
|
|
87
|
+
SIBYL_CONTEXT=myproject sibyl task list
|
|
88
|
+
|
|
89
|
+
# Priority: --context flag > SIBYL_CONTEXT env > active context > path link
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
## Development
|
|
93
|
+
|
|
94
|
+
```bash
|
|
95
|
+
moon run cli:lint # Ruff check
|
|
96
|
+
moon run cli:typecheck # Pyright
|
|
97
|
+
moon run cli:test # Tests
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
## SilkCircuit Colors
|
|
101
|
+
|
|
102
|
+
Terminal output uses the SilkCircuit palette:
|
|
103
|
+
- `#e135ff` Electric Purple — Headers
|
|
104
|
+
- `#80ffea` Neon Cyan — Interactions
|
|
105
|
+
- `#ff6ac1` Coral — Data/IDs
|
|
106
|
+
- `#50fa7b` Success Green
|
|
107
|
+
- `#ff6363` Error Red
|
|
108
|
+
|
|
109
|
+
## Dependencies
|
|
110
|
+
|
|
111
|
+
Depends on `sibyl-core` for shared models.
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
# sibyl-cli
|
|
2
|
+
|
|
3
|
+
Command-line interface for Sibyl. REST API client with Rich terminal output, designed for humans and AI agents.
|
|
4
|
+
|
|
5
|
+
## Quick Reference
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
# Install
|
|
9
|
+
uv tool install sibyl-cli # or: moon run install-cli
|
|
10
|
+
|
|
11
|
+
# Configure
|
|
12
|
+
sibyl config set server.url http://localhost:3334/api
|
|
13
|
+
sibyl auth login
|
|
14
|
+
|
|
15
|
+
# Link to project (scopes all commands)
|
|
16
|
+
sibyl project link <project_id>
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Core Commands
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
sibyl search "query" # Semantic search
|
|
23
|
+
sibyl add "title" "content" # Add knowledge
|
|
24
|
+
sibyl task list --status todo,doing # List tasks
|
|
25
|
+
sibyl task start <id> # Start task
|
|
26
|
+
sibyl task complete <id> --learnings "..." # Complete with learnings
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
## All Commands
|
|
30
|
+
|
|
31
|
+
| Command | Purpose |
|
|
32
|
+
|---------|---------|
|
|
33
|
+
| `search` | Semantic search |
|
|
34
|
+
| `add` | Add knowledge |
|
|
35
|
+
| `task` | Task lifecycle (list, start, complete, block, review) |
|
|
36
|
+
| `project` | Project management (list, link, create) |
|
|
37
|
+
| `epic` | Epic management (list, start, complete, roadmap) |
|
|
38
|
+
| `entity` | Entity CRUD |
|
|
39
|
+
| `explore` | Graph navigation (related, dependencies, communities) |
|
|
40
|
+
| `source` | Documentation sources (list, create, crawl) |
|
|
41
|
+
| `document` | View crawled documents |
|
|
42
|
+
| `auth` | Login, logout, API keys |
|
|
43
|
+
| `org` | Organization switching, member management |
|
|
44
|
+
| `config` | Configuration |
|
|
45
|
+
| `context` | Multi-server context management |
|
|
46
|
+
| `local` | Supabase-style local dev (start, stop, logs, reset) |
|
|
47
|
+
|
|
48
|
+
## Output Formats
|
|
49
|
+
|
|
50
|
+
```bash
|
|
51
|
+
sibyl task list # JSON (default, for scripts)
|
|
52
|
+
sibyl task list --table # Human-friendly
|
|
53
|
+
sibyl task list --csv # Spreadsheets
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## Context System
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
# Override for single command
|
|
60
|
+
sibyl --context myproject task list
|
|
61
|
+
SIBYL_CONTEXT=myproject sibyl task list
|
|
62
|
+
|
|
63
|
+
# Priority: --context flag > SIBYL_CONTEXT env > active context > path link
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
## Development
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
moon run cli:lint # Ruff check
|
|
70
|
+
moon run cli:typecheck # Pyright
|
|
71
|
+
moon run cli:test # Tests
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
## SilkCircuit Colors
|
|
75
|
+
|
|
76
|
+
Terminal output uses the SilkCircuit palette:
|
|
77
|
+
- `#e135ff` Electric Purple — Headers
|
|
78
|
+
- `#80ffea` Neon Cyan — Interactions
|
|
79
|
+
- `#ff6ac1` Coral — Data/IDs
|
|
80
|
+
- `#50fa7b` Success Green
|
|
81
|
+
- `#ff6363` Error Red
|
|
82
|
+
|
|
83
|
+
## Dependencies
|
|
84
|
+
|
|
85
|
+
Depends on `sibyl-core` for shared models.
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
# sibyl-cli - Command-line interface for Sibyl knowledge graph
|
|
2
|
+
# REST API client with Rich terminal output
|
|
3
|
+
|
|
4
|
+
[build-system]
|
|
5
|
+
requires = ["hatchling"]
|
|
6
|
+
build-backend = "hatchling.build"
|
|
7
|
+
|
|
8
|
+
[tool.hatch.version]
|
|
9
|
+
path = "../../VERSION"
|
|
10
|
+
pattern = "(?P<version>.+)"
|
|
11
|
+
|
|
12
|
+
[project]
|
|
13
|
+
name = "sibyl-dev"
|
|
14
|
+
dynamic = ["version"]
|
|
15
|
+
description = "CLI for Sibyl - Collective Intelligence Runtime for AI agents"
|
|
16
|
+
readme = "README.md"
|
|
17
|
+
license = "Apache-2.0"
|
|
18
|
+
requires-python = ">=3.13"
|
|
19
|
+
authors = [{ name = "Stefanie Jane", email = "stef@hyperbliss.tech" }]
|
|
20
|
+
keywords = ["ai-agents", "knowledge-graph", "cli", "mcp"]
|
|
21
|
+
classifiers = [
|
|
22
|
+
"Development Status :: 3 - Alpha",
|
|
23
|
+
"Environment :: Console",
|
|
24
|
+
"Intended Audience :: Developers",
|
|
25
|
+
"License :: OSI Approved :: Apache Software License",
|
|
26
|
+
"Programming Language :: Python :: 3",
|
|
27
|
+
"Programming Language :: Python :: 3.13",
|
|
28
|
+
"Typing :: Typed",
|
|
29
|
+
]
|
|
30
|
+
|
|
31
|
+
dependencies = [
|
|
32
|
+
# CLI Framework
|
|
33
|
+
"typer>=0.20.0",
|
|
34
|
+
"rich>=13.0",
|
|
35
|
+
# HTTP Client
|
|
36
|
+
"httpx>=0.27",
|
|
37
|
+
# Auth
|
|
38
|
+
"pyjwt>=2.10",
|
|
39
|
+
# Config
|
|
40
|
+
"pyyaml>=6.0",
|
|
41
|
+
"tomli-w>=1.2.0",
|
|
42
|
+
# Shared library
|
|
43
|
+
"sibyl-core",
|
|
44
|
+
]
|
|
45
|
+
|
|
46
|
+
# =============================================================================
|
|
47
|
+
# Development Dependencies (uv)
|
|
48
|
+
# =============================================================================
|
|
49
|
+
|
|
50
|
+
[dependency-groups]
|
|
51
|
+
dev = [
|
|
52
|
+
"pyright",
|
|
53
|
+
"pytest",
|
|
54
|
+
"pytest-asyncio",
|
|
55
|
+
"ruff",
|
|
56
|
+
]
|
|
57
|
+
|
|
58
|
+
[project.scripts]
|
|
59
|
+
sibyl = "sibyl_cli:main"
|
|
60
|
+
|
|
61
|
+
[project.urls]
|
|
62
|
+
Homepage = "https://github.com/hyperb1iss/sibyl"
|
|
63
|
+
Repository = "https://github.com/hyperb1iss/sibyl"
|
|
64
|
+
|
|
65
|
+
[tool.hatch.build.targets.wheel]
|
|
66
|
+
packages = ["src/sibyl_cli"]
|
|
67
|
+
|
|
68
|
+
[tool.hatch.build.targets.sdist]
|
|
69
|
+
include = ["/src", "/tests", "/README.md"]
|
|
70
|
+
|
|
71
|
+
[tool.ruff]
|
|
72
|
+
line-length = 100
|
|
73
|
+
src = ["src", "tests"]
|
|
74
|
+
|
|
75
|
+
[tool.ruff.lint]
|
|
76
|
+
select = ["E", "F", "I", "UP", "B", "SIM", "RUF"]
|
|
77
|
+
ignore = [
|
|
78
|
+
"E501", # Line length (formatter handles)
|
|
79
|
+
"RUF001", # Ambiguous unicode (intentional for CLI styling)
|
|
80
|
+
]
|
|
81
|
+
|
|
82
|
+
[tool.ruff.lint.isort]
|
|
83
|
+
known-first-party = ["sibyl_cli", "sibyl_core"]
|
|
84
|
+
|
|
85
|
+
[tool.pyright]
|
|
86
|
+
include = ["src"]
|
|
87
|
+
pythonVersion = "3.13"
|
|
88
|
+
typeCheckingMode = "standard"
|
|
89
|
+
|
|
90
|
+
# =============================================================================
|
|
91
|
+
# uv - Package Sources
|
|
92
|
+
# =============================================================================
|
|
93
|
+
|
|
94
|
+
[tool.uv.sources]
|
|
95
|
+
sibyl-core = { workspace = true }
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"""sibyl-cli: Command-line interface for Sibyl knowledge graph.
|
|
2
|
+
|
|
3
|
+
This package provides the client-side CLI for interacting with a Sibyl server.
|
|
4
|
+
All commands communicate via REST API - no direct database access.
|
|
5
|
+
|
|
6
|
+
Subcommand groups:
|
|
7
|
+
- task: Task lifecycle management
|
|
8
|
+
- epic: Epic/feature grouping
|
|
9
|
+
- project: Project operations
|
|
10
|
+
- entity: Generic entity CRUD
|
|
11
|
+
- explore: Graph traversal and exploration
|
|
12
|
+
- source: Documentation source management
|
|
13
|
+
- crawl: Web crawling
|
|
14
|
+
- auth: Authentication
|
|
15
|
+
- org: Organization management
|
|
16
|
+
- config: Configuration
|
|
17
|
+
- context: Project context
|
|
18
|
+
|
|
19
|
+
Server commands (serve, db, generate, etc.) are in the sibyl-server package.
|
|
20
|
+
"""
|
|
21
|
+
|
|
22
|
+
import os
|
|
23
|
+
|
|
24
|
+
# Disable Graphiti telemetry
|
|
25
|
+
os.environ.setdefault("GRAPHITI_TELEMETRY_ENABLED", "false")
|
|
26
|
+
|
|
27
|
+
__version__ = "0.1.0"
|
|
28
|
+
|
|
29
|
+
from sibyl_cli.main import app, main
|
|
30
|
+
|
|
31
|
+
__all__ = ["__version__", "app", "main"]
|