Languages / 语言: English | 简体中文
This guide will help you set up DLRS Hub and create your first digital life record.
Before you begin, ensure you have:
- Git installed on your system
- Python 3.8+ installed
- A text editor (VS Code, Sublime Text, etc.)
- Basic familiarity with command line
If you're starting fresh:
# Initialize a new Git repository
git init DLRS
cd DLRS
# Or clone an existing repository
git clone https://github.com/Digital-Life-Repository-Standard/DLRS.git
cd DLRS# Install Python dependencies
pip install -r tools/requirements.txt
# Verify installation
python tools/validate_repo.py --helpYou should see the help message for the validation tool.
The easiest way to create a new record is using the new_human_record.py tool:
python tools/new_human_record.py \
--record-id dlrs_12345678 \
--display-name "John Doe" \
--region americas \
--country usParameters:
--record-id: Unique identifier (format:dlrs_+ 8 characters)--display-name: Display name for the record--region: Geographic region (asia, europe, americas, africa, oceania)--country: Country code (ISO 3166-1 alpha-2, e.g., us, cn, jp)
This creates a new directory structure at:
humans/americas/us/dlrs_12345678_john-doe/
If you prefer manual setup:
# Copy the template
cp -r humans/_TEMPLATE/ humans/americas/us/dlrs_12345678_john-doe/
# Navigate to the new directory
cd humans/americas/us/dlrs_12345678_john-doe/This is the core configuration file. Open manifest.json and update:
{
"schema_version": "0.2.0",
"record_id": "dlrs_12345678",
"display_slug": "john-doe",
"visibility": "private",
"subject": {
"type": "self",
"display_name": "John Doe",
"locale": "en-US",
"residency_region": "US",
"is_minor": false,
"status": "living"
},
"rights": {
"uploader_role": "self",
"rights_basis": ["consent"],
"allow_public_listing": false,
"allow_commercial_use": false,
"allow_model_finetune": false,
"allow_voice_clone": false,
"allow_avatar_clone": false
},
"consent": {
"captured_at": "2026-04-25T10:30:00-05:00",
"withdrawal_endpoint": "mailto:your-email@example.com"
}
}If you plan to make your record public:
{
"display_name": "John Doe",
"bio": "A technology enthusiast and developer",
"locale": "en-US",
"tags": ["developer", "ai", "open-source"]
}Edit consent/consent_statement.md:
# Digital Life Record Consent Statement
I, John Doe, confirm that:
1. I voluntarily participate in the DLRS Digital Life Initiative
2. I understand how my data will be used
3. I retain the right to withdraw authorization at any time
Signature Date: April 25, 2026
Signatory: John DoeInstead, create pointer files in artifacts/raw_pointers/:
Example: artifacts/raw_pointers/audio/voice_master.pointer.json
{
"artifact_id": "voice_001",
"type": "voice_sample",
"format": "wav",
"storage_uri": "s3://my-bucket/audio/voice_master.wav",
"checksum": "sha256:abc123...",
"size_bytes": 1048576,
"region": "US",
"sensitivity": "S3_BIOMETRIC",
"contains_sensitive_data": true
}Before committing, validate your record:
# Return to repository root
cd /path/to/DLRS
# Run validation
python tools/validate_repo.pyIf validation passes, you'll see:
✓ All validations passed
✓ humans/americas/us/dlrs_12345678_john-doe/manifest.json is valid
If there are errors, the tool will show what needs to be fixed.
If your record is public (visibility: public_indexed or public_unlisted):
python tools/build_registry.pyThis updates the registry/humans.index.jsonl file.
# Add your new record
git add humans/americas/us/dlrs_12345678_john-doe/
# Commit with descriptive message
git commit -m "Add: John Doe's digital life record"
# Push to remote
git push origin mainIf you're contributing to a public DLRS Hub:
- Fork the repository on GitHub
- Create a new branch:
git checkout -b add-john-doe-record - Push your branch:
git push origin add-john-doe-record - Open a Pull Request on GitHub
- Select the template:
.github/PULL_REQUEST_TEMPLATE/human-record.md - Fill in the PR description:
- Record ID
- Visibility level
- Consent verification method
- Any special considerations
- Wait for review from maintainers
Solution: Check that all required fields in manifest.json are filled in. Compare with the example in humans/asia/cn/dlrs_94f1c9b8_lin-example/.
Solution: Choose a different record ID. Each ID must be unique across the entire repository.
Solution: You may have accidentally committed a large binary file. Use .pointer.json files instead. Run:
python tools/check_sensitive_files.pySolution: Make sure you've installed dependencies:
pip install -r tools/requirements.txtNow that you've created your first record, you can:
- Add more artifacts - Add pointers to audio, video, images, etc.
- Configure runtime - Set up runtime configuration in
runtime/ - Add derived data - Include embeddings, memory atoms, etc. in
derived/ - Set up inheritance - Configure inheritance policy in
profile/inheritance_policy.json - Review policies - Read through
policies/to understand compliance requirements
If you encounter issues:
- Check the FAQ
- Open an issue on GitHub
- Contact: https://github.com/Digital-Life-Repository-Standard/DLRS/discussions
Congratulations! 🎉 You've successfully created your first DLRS Hub record.