bodai 0.1.1__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.
Files changed (45) hide show
  1. bodai-0.1.1/.claude/settings.local.json +18 -0
  2. bodai-0.1.1/.complexipy_cache/be4373305c912bdc9ab0e94e53284782.json +175 -0
  3. bodai-0.1.1/.coverage +0 -0
  4. bodai-0.1.1/.envrc +1 -0
  5. bodai-0.1.1/.gitignore +1 -0
  6. bodai-0.1.1/.oneiric_cache/domain_activity.sqlite +0 -0
  7. bodai-0.1.1/.oneiric_cache/workflow_checkpoints.sqlite +0 -0
  8. bodai-0.1.1/.python-version +1 -0
  9. bodai-0.1.1/CLAUDE.md +112 -0
  10. bodai-0.1.1/LICENSE +29 -0
  11. bodai-0.1.1/PKG-INFO +150 -0
  12. bodai-0.1.1/README.md +129 -0
  13. bodai-0.1.1/bodai/__init__.py +3 -0
  14. bodai-0.1.1/bodai/admin/__init__.py +1 -0
  15. bodai-0.1.1/bodai/admin/shell.py +68 -0
  16. bodai-0.1.1/bodai/admin/shell.py.backup +66 -0
  17. bodai-0.1.1/bodai/cli.py +192 -0
  18. bodai-0.1.1/bodai/core/__init__.py +1 -0
  19. bodai-0.1.1/bodai/core/config.py +76 -0
  20. bodai-0.1.1/bodai/core/health.py +82 -0
  21. bodai-0.1.1/bodai/models/__init__.py +10 -0
  22. bodai-0.1.1/bodai/models/config.py +18 -0
  23. bodai-0.1.1/bodai/models/ecosystem.py +60 -0
  24. bodai-0.1.1/bodai/tui/__init__.py +1 -0
  25. bodai-0.1.1/bodai/tui/dashboard.css +35 -0
  26. bodai-0.1.1/bodai/tui/dashboard.py +91 -0
  27. bodai-0.1.1/complexipy_results_2026_02_20__11-04-30.json +170 -0
  28. bodai-0.1.1/complexipy_results_2026_02_20__11-40-25.json +170 -0
  29. bodai-0.1.1/config/ecosystem.yaml +43 -0
  30. bodai-0.1.1/config/portmap.yaml +17 -0
  31. bodai-0.1.1/config/storage-map.yaml +35 -0
  32. bodai-0.1.1/docs/architecture.md +181 -0
  33. bodai-0.1.1/docs/plans/2026-02-20-bodai-design.md +415 -0
  34. bodai-0.1.1/docs/plans/2026-02-20-bodai-implementation.md +1721 -0
  35. bodai-0.1.1/docs/portmap.md +269 -0
  36. bodai-0.1.1/docs/roles.md +200 -0
  37. bodai-0.1.1/docs/symbiosis.md +450 -0
  38. bodai-0.1.1/main.py +7 -0
  39. bodai-0.1.1/pyproject.toml +146 -0
  40. bodai-0.1.1/tests/__init__.py +1 -0
  41. bodai-0.1.1/tests/test_cli.py +26 -0
  42. bodai-0.1.1/tests/test_config.py +26 -0
  43. bodai-0.1.1/tests/test_health.py +37 -0
  44. bodai-0.1.1/tests/test_models.py +205 -0
  45. bodai-0.1.1/uv.lock +4450 -0
@@ -0,0 +1,18 @@
1
+ {
2
+ "permissions": {
3
+ "allow": [
4
+ "Bash(git commit:*)",
5
+ "Bash(.venv/bin/ruff check:*)",
6
+ "Bash(.venv/bin/ruff format:*)",
7
+ "Bash(git -C /Users/les/Projects/bodai status)",
8
+ "Bash(git -C /Users/les/Projects/bodai diff)",
9
+ "Bash(git -C /Users/les/Projects/bodai log --oneline -3)",
10
+ "Bash(git -C /Users/les/Projects/bodai add:*)",
11
+ "Bash(git -C:*)",
12
+ "Bash(mcp__crackerjack__init_crackerjack:*)",
13
+ "Bash(git push)",
14
+ "mcp__session-buddy__start_app_monitoring",
15
+ "mcp__session-buddy__start_conscious_agent"
16
+ ]
17
+ }
18
+ }
@@ -0,0 +1,175 @@
1
+ {
2
+ "functions": [
3
+ {
4
+ "complexity": 0,
5
+ "file_name": "shell.py",
6
+ "function_name": "launch_shell",
7
+ "path": "bodai/admin/shell.py"
8
+ },
9
+ {
10
+ "complexity": 0,
11
+ "file_name": "cli.py",
12
+ "function_name": "health",
13
+ "path": "bodai/cli.py"
14
+ },
15
+ {
16
+ "complexity": 0,
17
+ "file_name": "cli.py",
18
+ "function_name": "status",
19
+ "path": "bodai/cli.py"
20
+ },
21
+ {
22
+ "complexity": 1,
23
+ "file_name": "cli.py",
24
+ "function_name": "_display_health_table",
25
+ "path": "bodai/cli.py"
26
+ },
27
+ {
28
+ "complexity": 1,
29
+ "file_name": "cli.py",
30
+ "function_name": "config_show",
31
+ "path": "bodai/cli.py"
32
+ },
33
+ {
34
+ "complexity": 1,
35
+ "file_name": "cli.py",
36
+ "function_name": "dashboard",
37
+ "path": "bodai/cli.py"
38
+ },
39
+ {
40
+ "complexity": 1,
41
+ "file_name": "cli.py",
42
+ "function_name": "shell",
43
+ "path": "bodai/cli.py"
44
+ },
45
+ {
46
+ "complexity": 2,
47
+ "file_name": "cli.py",
48
+ "function_name": "restart",
49
+ "path": "bodai/cli.py"
50
+ },
51
+ {
52
+ "complexity": 2,
53
+ "file_name": "cli.py",
54
+ "function_name": "start",
55
+ "path": "bodai/cli.py"
56
+ },
57
+ {
58
+ "complexity": 2,
59
+ "file_name": "cli.py",
60
+ "function_name": "stop",
61
+ "path": "bodai/cli.py"
62
+ },
63
+ {
64
+ "complexity": 3,
65
+ "file_name": "cli.py",
66
+ "function_name": "config_validate",
67
+ "path": "bodai/cli.py"
68
+ },
69
+ {
70
+ "complexity": 0,
71
+ "file_name": "config.py",
72
+ "function_name": "load_storage_map",
73
+ "path": "bodai/core/config.py"
74
+ },
75
+ {
76
+ "complexity": 1,
77
+ "file_name": "config.py",
78
+ "function_name": "load_ecosystem",
79
+ "path": "bodai/core/config.py"
80
+ },
81
+ {
82
+ "complexity": 10,
83
+ "file_name": "config.py",
84
+ "function_name": "load_portmap",
85
+ "path": "bodai/core/config.py"
86
+ },
87
+ {
88
+ "complexity": 0,
89
+ "file_name": "health.py",
90
+ "function_name": "check_component",
91
+ "path": "bodai/core/health.py"
92
+ },
93
+ {
94
+ "complexity": 2,
95
+ "file_name": "health.py",
96
+ "function_name": "check_all",
97
+ "path": "bodai/core/health.py"
98
+ },
99
+ {
100
+ "complexity": 4,
101
+ "file_name": "health.py",
102
+ "function_name": "check_port",
103
+ "path": "bodai/core/health.py"
104
+ },
105
+ {
106
+ "complexity": 0,
107
+ "file_name": "ecosystem.py",
108
+ "function_name": "Component::role_display",
109
+ "path": "bodai/models/ecosystem.py"
110
+ },
111
+ {
112
+ "complexity": 3,
113
+ "file_name": "ecosystem.py",
114
+ "function_name": "Ecosystem::get_by_port",
115
+ "path": "bodai/models/ecosystem.py"
116
+ },
117
+ {
118
+ "complexity": 3,
119
+ "file_name": "ecosystem.py",
120
+ "function_name": "Ecosystem::get_by_role",
121
+ "path": "bodai/models/ecosystem.py"
122
+ },
123
+ {
124
+ "complexity": 0,
125
+ "file_name": "dashboard.py",
126
+ "function_name": "BodaiDashboard::action_refresh",
127
+ "path": "bodai/tui/dashboard.py"
128
+ },
129
+ {
130
+ "complexity": 0,
131
+ "file_name": "dashboard.py",
132
+ "function_name": "BodaiDashboard::compose",
133
+ "path": "bodai/tui/dashboard.py"
134
+ },
135
+ {
136
+ "complexity": 0,
137
+ "file_name": "dashboard.py",
138
+ "function_name": "ComponentList::__init__",
139
+ "path": "bodai/tui/dashboard.py"
140
+ },
141
+ {
142
+ "complexity": 0,
143
+ "file_name": "dashboard.py",
144
+ "function_name": "ComponentList::_load_components",
145
+ "path": "bodai/tui/dashboard.py"
146
+ },
147
+ {
148
+ "complexity": 0,
149
+ "file_name": "dashboard.py",
150
+ "function_name": "ComponentWidget::__init__",
151
+ "path": "bodai/tui/dashboard.py"
152
+ },
153
+ {
154
+ "complexity": 1,
155
+ "file_name": "dashboard.py",
156
+ "function_name": "ComponentList::compose",
157
+ "path": "bodai/tui/dashboard.py"
158
+ },
159
+ {
160
+ "complexity": 1,
161
+ "file_name": "dashboard.py",
162
+ "function_name": "ComponentWidget::compose",
163
+ "path": "bodai/tui/dashboard.py"
164
+ },
165
+ {
166
+ "complexity": 2,
167
+ "file_name": "dashboard.py",
168
+ "function_name": "ComponentList::refresh_health",
169
+ "path": "bodai/tui/dashboard.py"
170
+ }
171
+ ],
172
+ "targets": [
173
+ "/Users/les/Projects/bodai/bodai"
174
+ ]
175
+ }
bodai-0.1.1/.coverage ADDED
Binary file
bodai-0.1.1/.envrc ADDED
@@ -0,0 +1 @@
1
+ layout uv
bodai-0.1.1/.gitignore ADDED
@@ -0,0 +1 @@
1
+ __pycache__/
@@ -0,0 +1 @@
1
+ 3.13
bodai-0.1.1/CLAUDE.md ADDED
@@ -0,0 +1,112 @@
1
+ # CLAUDE.md
2
+
3
+ This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
4
+
5
+ ## Project Overview
6
+
7
+ Bodai (The Orb) is a meta-project for the Bodai ecosystem. It provides configuration, documentation, and operational tooling for managing interconnected components. The project serves as a central hub for ecosystem-wide operations, health monitoring, and configuration management.
8
+
9
+ ## Ecosystem Components
10
+
11
+ | Component | Role | Port |
12
+ |-----------|------|------|
13
+ | Mahavishnu | Orchestrator | 8680 |
14
+ | Akosha | Seer | 8682 |
15
+ | Dhruva | Curator | 8683 |
16
+ | Session-Buddy | Builder | 8678 |
17
+ | Crackerjack | Inspector | 8676 |
18
+
19
+ ## Development Commands
20
+
21
+ ### Installation
22
+
23
+ ```bash
24
+ uv sync --group dev
25
+ ```
26
+
27
+ ### Testing
28
+
29
+ ```bash
30
+ # Run all tests
31
+ pytest
32
+
33
+ # Run specific test file
34
+ pytest tests/test_health.py
35
+
36
+ # Run tests with coverage
37
+ pytest --cov=bodai
38
+ ```
39
+
40
+ ### Code Quality
41
+
42
+ ```bash
43
+ # Linting
44
+ crackerjack lint
45
+
46
+ # Type checking
47
+ crackerjack typecheck
48
+
49
+ # Security scanning
50
+ crackerjack security
51
+ ```
52
+
53
+ ### Running CLI
54
+
55
+ ```bash
56
+ # Health check command
57
+ python -m bodai.cli health
58
+
59
+ # Dashboard command
60
+ python -m bodai.cli dashboard
61
+
62
+ # Interactive shell
63
+ python -m bodai.cli shell
64
+ ```
65
+
66
+ ## Architecture
67
+
68
+ The Bodai project is organized into three primary layers:
69
+
70
+ ### 1. Config Layer
71
+
72
+ - Configuration management for ecosystem components
73
+ - YAML-based configuration files for each component
74
+ - Environment-specific settings management
75
+
76
+ ### 2. Models Layer
77
+
78
+ - Pydantic models for data validation and serialization
79
+ - Component status and health check models
80
+ - Ecosystem topology representations
81
+
82
+ ### 3. Operations Layer
83
+
84
+ - CLI commands using Typer framework
85
+ - Interactive TUI using Textual
86
+ - Concurrent operations using ThreadPoolExecutor
87
+
88
+ ## Key Patterns
89
+
90
+ ### Pydantic Models
91
+
92
+ All data models use Pydantic v2 for validation, serialization, and settings management. Models are defined with strict type hints and comprehensive validation rules.
93
+
94
+ ### Typer CLI Framework
95
+
96
+ The CLI is built using Typer for intuitive command-line interfaces with automatic help generation and rich formatting via Rich integration.
97
+
98
+ ### Textual TUI
99
+
100
+ Interactive dashboards and shells use Textual for terminal-based user interfaces with reactive components and event-driven architecture.
101
+
102
+ ### ThreadPoolExecutor
103
+
104
+ Concurrent health checks and operations across ecosystem components use ThreadPoolExecutor for parallel execution with configurable thread pools.
105
+
106
+ ## Configuration Files
107
+
108
+ The ecosystem configuration is managed through three YAML files:
109
+
110
+ 1. `config/components.yaml` - Component definitions and connection settings
111
+ 1. `config/monitoring.yaml` - Health check intervals and thresholds
112
+ 1. `config/operations.yaml` - Operational procedures and automation rules
bodai-0.1.1/LICENSE ADDED
@@ -0,0 +1,29 @@
1
+ BSD 3-Clause License
2
+
3
+ Copyright (c) 2023, Les Leslie & Wedgwood Web Works
4
+ All rights reserved.
5
+
6
+ Redistribution and use in source and binary forms, with or without
7
+ modification, are permitted provided that the following conditions are met:
8
+
9
+ * Redistributions of source code must retain the above copyright notice, this
10
+ list of conditions and the following disclaimer.
11
+
12
+ * Redistributions in binary form must reproduce the above copyright notice,
13
+ this list of conditions and the following disclaimer in the documentation
14
+ and/or other materials provided with the distribution.
15
+
16
+ * Neither the name of the copyright holder nor the names of its
17
+ contributors may be used to endorse or promote products derived from
18
+ this software without specific prior written permission.
19
+
20
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
23
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
24
+ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
26
+ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
27
+ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
28
+ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
29
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
bodai-0.1.1/PKG-INFO ADDED
@@ -0,0 +1,150 @@
1
+ Metadata-Version: 2.4
2
+ Name: bodai
3
+ Version: 0.1.1
4
+ Summary: The Orb - Ecosystem meta-project for Bodai
5
+ License-File: LICENSE
6
+ Requires-Python: >=3.13
7
+ Requires-Dist: httpx>=0.25.0
8
+ Requires-Dist: ipython>=8.0.0
9
+ Requires-Dist: oneiric>=0.2.0
10
+ Requires-Dist: pydantic-settings>=2.0.0
11
+ Requires-Dist: pydantic>=2.0.0
12
+ Requires-Dist: pyyaml>=6.0.0
13
+ Requires-Dist: rich>=13.0.0
14
+ Requires-Dist: textual>=0.40.0
15
+ Requires-Dist: typer>=0.9.0
16
+ Provides-Extra: dev
17
+ Requires-Dist: pytest-asyncio>=0.21.0; extra == 'dev'
18
+ Requires-Dist: pytest-cov>=4.0.0; extra == 'dev'
19
+ Requires-Dist: pytest>=7.0.0; extra == 'dev'
20
+ Description-Content-Type: text/markdown
21
+
22
+ # Bodai
23
+
24
+ Central meta-project for the Bodai ecosystem, providing configuration, documentation, and operations for all components.
25
+
26
+ > **Etymology**: From Sanskrit *bodhi* (awakening, enlightenment) - the state of supreme understanding.
27
+
28
+ ## Ecosystem Components
29
+
30
+ The Bodai ecosystem consists of six interconnected components, each with a distinct role. Five are network services with MCP servers, while Oneiric serves as a shared library.
31
+
32
+ | Component | Role | Port | GitHub | Description |
33
+ |-----------|------|------|--------|-------------|
34
+ | [Mahavishnu](#mahavishnu---the-orchestrator) | Orchestrator | 8680 | [lesleslie/mahavishnu](https://github.com/lesleslie/mahavishnu) | Multi-engine workflow orchestration |
35
+ | [Akosha](#akosha---the-seer) | Seer | 8682 | [lesleslie/akosha](https://github.com/lesleslie/akosha) | Cross-system intelligence & vector embeddings |
36
+ | [Dhruva](#dhruva---the-curator) | Curator | 8683 | [lesleslie/dhruva](https://github.com/lesleslie/dhruva) | Persistent object storage with ACID |
37
+ | [Session-Buddy](#session-buddy---the-builder) | Builder | 8678 | [lesleslie/session-buddy](https://github.com/lesleslie/session-buddy) | Session lifecycle & knowledge graphs |
38
+ | [Crackerjack](#crackerjack---the-inspector) | Inspector | 8676 | [lesleslie/crackerjack](https://github.com/lesleslie/crackerjack) | Quality gates & CI/CD validation |
39
+ | [Oneiric](#oneiric---the-resolver) | Resolver | N/A | [lesleslie/oneiric](https://github.com/lesleslie/oneiric) | Conflict resolution library |
40
+
41
+ ---
42
+
43
+ ### Mahavishnu - The Orchestrator
44
+
45
+ > From Sanskrit *maha* (great) + *Vishnu* (the preserver in Hindu trinity)
46
+
47
+ The central workflow engine that routes tasks to appropriate execution engines, coordinates multi-step processes across components, and manages workflow definitions and templates.
48
+
49
+ - Routes tasks to Akosha for intelligence operations
50
+ - Persists state to Dhruva for recovery
51
+ - Tracks context in Session-Buddy
52
+ - Validates with Crackerjack before execution
53
+
54
+ ### Akosha - The Seer
55
+
56
+ > From Sanskrit *akasha* (sky, ether, space) - the fifth element, medium of consciousness
57
+
58
+ Provides cross-system intelligence through vector embeddings, semantic search, pattern detection, and knowledge graphs. Enables predictive analysis and recommendations across all sessions.
59
+
60
+ - Receives session data from Session-Buddy for embedding
61
+ - Stores patterns in Dhruva
62
+ - Provides intelligence to Mahavishnu
63
+ - Receives code analysis from Crackerjack
64
+
65
+ ### Dhruva - The Curator
66
+
67
+ > From Sanskrit *dhruva* (firm, constant, unchanging) - also the Pole Star
68
+
69
+ The single source of truth for persistent data. Provides ACID transaction guarantees, data versioning, backup/recovery, and efficient querying.
70
+
71
+ - Stores state for Mahavishnu
72
+ - Persists patterns for Akosha
73
+ - Backs up sessions for Session-Buddy
74
+ - Stores quality reports for Crackerjack
75
+
76
+ ### Session-Buddy - The Builder
77
+
78
+ The session lifecycle manager that tracks conversation history, builds knowledge graphs, and enables context switching between sessions.
79
+
80
+ - Sends data to Akosha for embedding
81
+ - Stores backups in Dhruva
82
+ - Provides context to Mahavishnu
83
+ - Receives quality metrics from Crackerjack
84
+
85
+ ### Crackerjack - The Inspector
86
+
87
+ The quality enforcer that runs automated test suites, manages CI/CD pipelines, provides code analysis and linting, and tracks quality metrics over time.
88
+
89
+ - Validates workflows for Mahavishnu
90
+ - Sends code analysis to Akosha
91
+ - Stores reports in Dhruva
92
+ - Records metrics in Session-Buddy
93
+
94
+ ### Oneiric - The Resolver
95
+
96
+ > From Greek *oneiros* (dream) - relating to dreams, the abstract and complex
97
+
98
+ A shared library (no MCP server) that provides conflict resolution algorithms, dependency graph analysis, version conflict detection, and merge strategies. Embedded directly by other components.
99
+
100
+ - Used by Mahavishnu for workflow conflict resolution
101
+ - Used by Dhruva for data merge operations
102
+ - Used by Session-Buddy for context merging
103
+
104
+ ---
105
+
106
+ ## Installation
107
+
108
+ ```bash
109
+ uv sync
110
+ ```
111
+
112
+ ## Commands
113
+
114
+ Bodai provides a unified CLI for managing the ecosystem:
115
+
116
+ | Command | Description |
117
+ |---------|-------------|
118
+ | `bodai health` | Check health status of all ecosystem components |
119
+ | `bodai start` | Start all ecosystem services |
120
+ | `bodai stop` | Stop all ecosystem services |
121
+ | `bodai restart` | Restart all ecosystem services |
122
+ | `bodai dashboard` | Launch the interactive monitoring dashboard |
123
+ | `bodai shell` | Open an interactive management shell |
124
+ | `bodai config show` | Display current configuration |
125
+ | `bodai config validate` | Validate configuration files |
126
+
127
+ ## Architecture
128
+
129
+ For detailed architecture documentation, see [docs/architecture.md](docs/architecture.md).
130
+
131
+ ## Development
132
+
133
+ ### Running Tests
134
+
135
+ ```bash
136
+ pytest
137
+ ```
138
+
139
+ ### Quality Checks
140
+
141
+ ```bash
142
+ crackerjack run
143
+ ```
144
+
145
+ ## Related Documentation
146
+
147
+ - [Architecture](docs/architecture.md) - System overview and data flow
148
+ - [Component Roles](docs/roles.md) - Detailed descriptions of each component
149
+ - [Symbiosis](docs/symbiosis.md) - How components work together
150
+ - [Port Map](docs/portmap.md) - Port allocation and rationale
bodai-0.1.1/README.md ADDED
@@ -0,0 +1,129 @@
1
+ # Bodai
2
+
3
+ Central meta-project for the Bodai ecosystem, providing configuration, documentation, and operations for all components.
4
+
5
+ > **Etymology**: From Sanskrit *bodhi* (awakening, enlightenment) - the state of supreme understanding.
6
+
7
+ ## Ecosystem Components
8
+
9
+ The Bodai ecosystem consists of six interconnected components, each with a distinct role. Five are network services with MCP servers, while Oneiric serves as a shared library.
10
+
11
+ | Component | Role | Port | GitHub | Description |
12
+ |-----------|------|------|--------|-------------|
13
+ | [Mahavishnu](#mahavishnu---the-orchestrator) | Orchestrator | 8680 | [lesleslie/mahavishnu](https://github.com/lesleslie/mahavishnu) | Multi-engine workflow orchestration |
14
+ | [Akosha](#akosha---the-seer) | Seer | 8682 | [lesleslie/akosha](https://github.com/lesleslie/akosha) | Cross-system intelligence & vector embeddings |
15
+ | [Dhruva](#dhruva---the-curator) | Curator | 8683 | [lesleslie/dhruva](https://github.com/lesleslie/dhruva) | Persistent object storage with ACID |
16
+ | [Session-Buddy](#session-buddy---the-builder) | Builder | 8678 | [lesleslie/session-buddy](https://github.com/lesleslie/session-buddy) | Session lifecycle & knowledge graphs |
17
+ | [Crackerjack](#crackerjack---the-inspector) | Inspector | 8676 | [lesleslie/crackerjack](https://github.com/lesleslie/crackerjack) | Quality gates & CI/CD validation |
18
+ | [Oneiric](#oneiric---the-resolver) | Resolver | N/A | [lesleslie/oneiric](https://github.com/lesleslie/oneiric) | Conflict resolution library |
19
+
20
+ ---
21
+
22
+ ### Mahavishnu - The Orchestrator
23
+
24
+ > From Sanskrit *maha* (great) + *Vishnu* (the preserver in Hindu trinity)
25
+
26
+ The central workflow engine that routes tasks to appropriate execution engines, coordinates multi-step processes across components, and manages workflow definitions and templates.
27
+
28
+ - Routes tasks to Akosha for intelligence operations
29
+ - Persists state to Dhruva for recovery
30
+ - Tracks context in Session-Buddy
31
+ - Validates with Crackerjack before execution
32
+
33
+ ### Akosha - The Seer
34
+
35
+ > From Sanskrit *akasha* (sky, ether, space) - the fifth element, medium of consciousness
36
+
37
+ Provides cross-system intelligence through vector embeddings, semantic search, pattern detection, and knowledge graphs. Enables predictive analysis and recommendations across all sessions.
38
+
39
+ - Receives session data from Session-Buddy for embedding
40
+ - Stores patterns in Dhruva
41
+ - Provides intelligence to Mahavishnu
42
+ - Receives code analysis from Crackerjack
43
+
44
+ ### Dhruva - The Curator
45
+
46
+ > From Sanskrit *dhruva* (firm, constant, unchanging) - also the Pole Star
47
+
48
+ The single source of truth for persistent data. Provides ACID transaction guarantees, data versioning, backup/recovery, and efficient querying.
49
+
50
+ - Stores state for Mahavishnu
51
+ - Persists patterns for Akosha
52
+ - Backs up sessions for Session-Buddy
53
+ - Stores quality reports for Crackerjack
54
+
55
+ ### Session-Buddy - The Builder
56
+
57
+ The session lifecycle manager that tracks conversation history, builds knowledge graphs, and enables context switching between sessions.
58
+
59
+ - Sends data to Akosha for embedding
60
+ - Stores backups in Dhruva
61
+ - Provides context to Mahavishnu
62
+ - Receives quality metrics from Crackerjack
63
+
64
+ ### Crackerjack - The Inspector
65
+
66
+ The quality enforcer that runs automated test suites, manages CI/CD pipelines, provides code analysis and linting, and tracks quality metrics over time.
67
+
68
+ - Validates workflows for Mahavishnu
69
+ - Sends code analysis to Akosha
70
+ - Stores reports in Dhruva
71
+ - Records metrics in Session-Buddy
72
+
73
+ ### Oneiric - The Resolver
74
+
75
+ > From Greek *oneiros* (dream) - relating to dreams, the abstract and complex
76
+
77
+ A shared library (no MCP server) that provides conflict resolution algorithms, dependency graph analysis, version conflict detection, and merge strategies. Embedded directly by other components.
78
+
79
+ - Used by Mahavishnu for workflow conflict resolution
80
+ - Used by Dhruva for data merge operations
81
+ - Used by Session-Buddy for context merging
82
+
83
+ ---
84
+
85
+ ## Installation
86
+
87
+ ```bash
88
+ uv sync
89
+ ```
90
+
91
+ ## Commands
92
+
93
+ Bodai provides a unified CLI for managing the ecosystem:
94
+
95
+ | Command | Description |
96
+ |---------|-------------|
97
+ | `bodai health` | Check health status of all ecosystem components |
98
+ | `bodai start` | Start all ecosystem services |
99
+ | `bodai stop` | Stop all ecosystem services |
100
+ | `bodai restart` | Restart all ecosystem services |
101
+ | `bodai dashboard` | Launch the interactive monitoring dashboard |
102
+ | `bodai shell` | Open an interactive management shell |
103
+ | `bodai config show` | Display current configuration |
104
+ | `bodai config validate` | Validate configuration files |
105
+
106
+ ## Architecture
107
+
108
+ For detailed architecture documentation, see [docs/architecture.md](docs/architecture.md).
109
+
110
+ ## Development
111
+
112
+ ### Running Tests
113
+
114
+ ```bash
115
+ pytest
116
+ ```
117
+
118
+ ### Quality Checks
119
+
120
+ ```bash
121
+ crackerjack run
122
+ ```
123
+
124
+ ## Related Documentation
125
+
126
+ - [Architecture](docs/architecture.md) - System overview and data flow
127
+ - [Component Roles](docs/roles.md) - Detailed descriptions of each component
128
+ - [Symbiosis](docs/symbiosis.md) - How components work together
129
+ - [Port Map](docs/portmap.md) - Port allocation and rationale
@@ -0,0 +1,3 @@
1
+ """Bodai - The Orb. Ecosystem meta-project."""
2
+
3
+ __version__ = "0.1.0"
@@ -0,0 +1 @@
1
+ """Admin tools: IPython shell."""