Skip to content

Commit f2c20c2

Browse files
author
Symbiont OSS Sync
committed
Fix Docker build
1 parent 17ac9c8 commit f2c20c2

File tree

3 files changed

+70
-14
lines changed

3 files changed

+70
-14
lines changed

.github/workflows/docker-build.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,26 +8,26 @@ on:
88

99
env:
1010
REGISTRY: ghcr.io
11-
IMAGE_NAME: thirdkeyai/symbiont-sdk-python
11+
IMAGE_NAME: thirdkeyai/symbi
1212

1313
jobs:
1414
build:
1515
runs-on: ubuntu-latest
1616
permissions:
1717
contents: read
1818
packages: write
19-
19+
2020
steps:
2121
- name: Checkout repository
2222
uses: actions/checkout@v4
23-
23+
2424
- name: Log in to Container Registry
2525
uses: docker/login-action@v3
2626
with:
2727
registry: ${{ env.REGISTRY }}
2828
username: ${{ github.actor }}
2929
password: ${{ secrets.GITHUB_TOKEN }}
30-
30+
3131
- name: Extract metadata
3232
id: meta
3333
uses: docker/metadata-action@v5
@@ -38,7 +38,7 @@ jobs:
3838
type=ref,event=pr
3939
type=sha
4040
type=raw,value=latest,enable={{is_default_branch}}
41-
41+
4242
- name: Build and push Docker image
4343
uses: docker/build-push-action@v5
4444
with:

README.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -91,12 +91,14 @@ symbi/
9191
### ✅ Community Features (OSS)
9292
- **DSL Grammar**: Complete Tree-sitter grammar for agent definitions
9393
- **Agent Runtime**: Task scheduling, resource management, lifecycle control
94-
- **Docker Sandboxing**: Basic containerized isolation for agent operations
94+
- **Tier 1 Sandboxing**: Docker containerized isolation for agent operations
9595
- **MCP Integration**: Model Context Protocol client for external tools
9696
- **SchemaPin Security**: Basic cryptographic tool verification
9797
- **RAG Engine**: Retrieval-augmented generation with vector search
9898
- **Context Management**: Persistent agent memory and knowledge storage
9999
- **Vector Database**: Qdrant integration for semantic search
100+
- **Basic Secrets Management**: Local encrypted file storage for configurations
101+
- **Cryptographic CLI**: Tool for encrypting/decrypting secret files
100102
- **HTTP API**: Optional RESTful interface (feature-gated)
101103
102104
### 🏢 Enterprise Features (License Required)
@@ -141,13 +143,13 @@ agent analyze_data(input: DataSet) -> Result {
141143
## 🔒 Security Model
142144
143145
### Basic Security (Community)
144-
- **Docker Isolation**: Containerized agent execution
146+
- **Tier 1 Isolation**: Docker containerized agent execution
145147
- **Schema Verification**: Cryptographic tool validation with SchemaPin
146148
- **Policy Engine**: Basic resource access control
147149
- **Audit Logging**: Operation tracking and compliance
148150
149151
### Advanced Security (Enterprise)
150-
- **Multi-tier Sandboxing**: gVisor/Firecracker for high-risk operations **(Enterprise)**
152+
- **Enhanced Sandboxing**: gVisor (Tier2) and Firecracker (Tier3) isolation **(Enterprise)**
151153
- **AI Security Review**: Automated tool analysis and approval **(Enterprise)**
152154
- **Encrypted Communication**: Secure inter-agent messaging **(Enterprise)**
153155
- **Comprehensive Audits**: Cryptographic integrity guarantees **(Enterprise)**

crates/runtime/README.md

Lines changed: 60 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ The Symbi Agent Runtime System provides a complete infrastructure for executing
1919
- **SchemaPin Security**: Tool verification with Trust-On-First-Use (TOFU)
2020
- **AI Tool Review**: Automated security analysis and signing workflow
2121
- **Policy Engine**: Resource access control with YAML-based policies
22+
- **Basic Secrets Management**: Local encrypted file storage for secure configurations
23+
- **Cryptographic CLI**: Tool for encrypting/decrypting secret files locally
2224
- **Optional HTTP API**: RESTful API interface for external system integration (feature-gated)
2325

2426
## Architecture
@@ -363,9 +365,56 @@ match decision.decision {
363365
// Handle other decision types
364366
}
365367
}
368+
### 9. Basic Secrets Management
369+
370+
Local encrypted file storage for secure configuration data:
371+
372+
```rust
373+
use symbi_runtime::secrets::file_backend::*;
374+
use symbi_runtime::crypto::*;
375+
376+
// Configure encrypted file storage
377+
let file_config = FileBackendConfig {
378+
base_path: "./secrets".to_string(),
379+
file_extension: "enc".to_string(),
380+
permissions: 0o600,
381+
};
382+
383+
let crypto = Aes256GcmCrypto::new();
384+
let key_utils = KeyUtils::new();
385+
let master_key = key_utils.get_or_create_key()?;
386+
387+
let file_backend = FileBackend::new(file_config, crypto, master_key).await?;
388+
389+
// Store encrypted secret
390+
let secret = Secret::new("api_key", "secret_value_123")
391+
.with_metadata("environment", "development");
392+
393+
file_backend.store_secret("app/api_key", secret).await?;
394+
395+
// Retrieve a secret
396+
let retrieved = file_backend.get_secret("app/api_key").await?;
397+
println!("API Key: {}", retrieved.value);
366398
```
367399

368-
### 9. Optional HTTP API
400+
#### CLI Usage
401+
402+
Encrypt and decrypt secret files:
403+
404+
```bash
405+
# Encrypt a JSON configuration file
406+
symbiont secrets encrypt --in config.json --out config.json.enc
407+
408+
# Decrypt and view
409+
symbiont secrets decrypt --in config.json.enc
410+
411+
# Edit encrypted file in-place
412+
symbiont secrets edit --file config.json.enc
413+
```
414+
415+
```
416+
417+
### 10. Optional HTTP API
369418
370419
When enabled with the `http-api` feature, the runtime exposes a RESTful API:
371420
@@ -426,11 +475,10 @@ cargo build --features http-api
426475

427476
## Security Features
428477

429-
### Multi-tier Sandboxing
478+
### Sandboxing
430479

431-
- **Tier1**: Docker containers with resource limits
432-
- **Tier2**: gVisor for enhanced isolation
433-
- **Tier3**: Firecracker microVMs for maximum security
480+
- **Tier 1 (Docker)**: Container isolation with resource limits and security hardening
481+
- **Enhanced Isolation**: Additional tiers available in Enterprise edition
434482

435483
### SchemaPin Cryptographic Security
436484

@@ -715,7 +763,13 @@ For issues and questions:
715763
- [x] Resource access management with policy engine
716764
- [x] Complete end-to-end security framework
717765

718-
### 🚧 Phase 6: Advanced Intelligence (PLANNED)
766+
### ✅ Phase 6: Basic Secrets Management (COMPLETED)
767+
- [x] Encrypted file backend with AES-256-GCM encryption
768+
- [x] CLI tools for secret encryption/decryption operations
769+
- [x] Cross-platform file-based secret storage
770+
- [x] Integration with existing runtime components
771+
772+
### 🚧 Phase 7: Advanced Intelligence (PLANNED)
719773
- [ ] Multi-modal RAG support (images, audio, structured data)
720774
- [ ] Cross-agent knowledge synthesis with knowledge graphs
721775
- [ ] Intelligent context management with adaptive pruning

0 commit comments

Comments
 (0)