Version: v0.2.0-alpha
English | Deutsch | 中文 | 繁體中文 | Español | 日本語 | 한국어 | Čeština | Русский
This project provides two implementation versions:
- Positioning: Default implementation, primarily used for architecture feasibility verification
- Runtime Mode: Console application
- Storage: File system JSON storage
- Use Case: Data security priority, small data volume, development debugging, architecture verification
- Platform Support: Windows, Linux, macOS
- Role Description: Serves as the baseline implementation for architecture verification, providing a simple and reliable runtime mode, suitable for first-time users or development debugging
- Positioning: Main production version
- Runtime Mode: Desktop application (Windows/macOS system tray / Linux status window)
- Storage: SpeedyPack in-memory storage + asynchronous persistence (.spk file format)
- Use Case: High concurrency, low latency, large data volume, long-term production operation
- Platform Support: Windows/macOS (full features, including system tray), Linux (status window, no tray icon)
- Role Description: A production-grade implementation with deep optimization, the first choice for long-term operation and actual production environments
Beginner Suggestion: First-time users are recommended to start with SiliconLife.Default to quickly verify architecture feasibility; after becoming familiar with the system, we strongly recommend migrating to SiliconLife.Fast as the production environment runtime version.
- .NET 9 SDK - Download
- Git - Download
- Ollama (optional, for local AI) - Download
- DashScope API Key (optional, for cloud AI) - Apply
- Volcengine Ark API Key (optional, for cloud AI) - Apply
- Herdsman (optional, local/cloud inference engine) - No authentication, compatible with OpenAI API format
- Meituan LongCat API Key (optional, for cloud AI) - API key authentication
- Qiniu Cloud AI API Key (optional, for cloud AI) - API key authentication
git clone https://github.com/akimoto-akira/SiliconLifeCollective.git
cd SiliconLifeCollectivedotnet buildEdit src/SiliconLife.Default/Config/DefaultConfigData.cs or modify configuration at runtime through the Web UI.
{
"AIClients": {
"Ollama": {
"BaseUrl": "http://localhost:11434",
"Model": "qwen2.5:7b"
}
}
}{
"AIClients": {
"DashScope": {
"ApiKey": "your-api-key-here",
"Model": "qwen-plus",
"Region": "beijing"
}
}
}Available Regions:
beijing(Beijing),virginia(Virginia),singapore(Singapore),hongkong(Hong Kong),frankfurt(Frankfurt)
{
"AIClients": {
"VolcengineArk": {
"ApiKey": "your-api-key-here",
"Endpoint": "https://ark.cn-beijing.volces.com/api/v3/chat/completions",
"Model": "ep-xxxxxxxxxxxxx-xxxxx"
}
}
}Note: The Model parameter for Volcengine Ark accepts an inference endpoint ID (e.g.,
ep-20241212123456-abcde), not a model name.
{
"AIClients": {
"Herdsman": {
"Endpoint": "http://localhost:8000",
"Model": "model-name"
}
}
}Features: No authentication, compatible with OpenAI API format, supports tool calls and reasoning content.
{
"AIClients": {
"LongCat": {
"ApiKey": "api-key",
"Endpoint": "https://api.longcat.ai/v1/chat/completions",
"Model": "model-name"
}
}
}{
"AIClients": {
"QiniuAI": {
"ApiKey": "api-key",
"Endpoint": "https://api.qiniu.com/v1/chat/completions",
"Model": "model-name"
}
}
}cd src/SiliconLife.Default
dotnet runThe web server will start at http://localhost:8080
cd src/SiliconLife.Fast
dotnet runWindows/macOS: The application will start in form mode, minimized to system tray, with the web server also starting at http://localhost:8080
Linux: The application will display a status window (no system tray icon) and automatically open the browser to access the Web UI. You can also use the --no-tray parameter to skip auto-opening the browser:
dotnet run -- --no-trayOpen your browser and navigate to:
http://localhost:8080
You will see a dashboard with:
- Silicon Being Management
- Chat Interface
- Configuration Panel
- System Monitoring
- Navigate to Being Management in the Web UI
- Click Create New Being
- Configure the Soul File (
soul.md) with personality and behavior - Start the being
# My First Silicon Being
## Personality
You are a helpful assistant specializing in code review.
## Capabilities
- Review code quality
- Suggest improvements
- Explain complex concepts
## Behavior
- Always provide constructive feedback
- Use clear examples
- Be concise but thoroughProblem: Cannot connect to Ollama at http://localhost:11434
Solution:
# Check if Ollama is running
ollama list
# Start Ollama if needed
ollama serveProblem: model "qwen2.5:7b" not found
Solution:
# Pull the required model
ollama pull qwen2.5:7bProblem: HttpListenerException: Address already in use
Solution:
- Change the port in configuration
- Or kill the process using port 8080:
# Windows
netstat -ano | findstr :8080
taskkill /PID <PID> /F
# Linux/Mac
lsof -ti:8080 | xargs kill -9- 📚 Read the Architecture Guide to understand system design
- 🛠️ Check the Development Guide to extend the system
- 📖 Explore the API Reference for integration details
- 🔒 Review the Security Documentation for the permission system
- 🧰 See the Tools Reference for all built-in tools
- 🌐 Check the Web UI Guide for interface features
SiliconLifeCollective/
├── src/
│ ├── SiliconLife.Core/ # Core interfaces and abstractions
│ ├── SiliconLife.Common/ # Shared implementations (used by both versions)
│ ├── SiliconLife.App/ # Application layer shared by Default and Fast
│ ├── SiliconLife.Default/ # Default implementation + entry point (console version)
│ ├── SiliconLife.Fast/ # High-performance implementation + entry point (forms version)
│ ├── SiliconLife.Speedy/ # SpeedyPack high-performance storage engine
│ └── SiliconLife.Speedy.Manager/ # SpeedyPack management tool (Avalonia UI)
├── docs/ # Documentation (multi-language, 34 language variants)
│ ├── en/ # English
│ ├── zh-CN/ # Simplified Chinese
│ ├── zh-HK/ # Traditional Chinese
│ ├── es-ES/ # Spanish
│ ├── ja-JP/ # Japanese
│ ├── ko-KR/ # Korean
│ └── cs-CZ/ # Czech
├── 总文档/ # Requirements and architecture docs (Chinese)
└── README.md # Project readme
- 📖 Check the Help Documentation System (multi-language support)
- 📚 Read the Full Documentation
- 🐛 Report issues on GitHub
- 💬 Join community discussions