SkillAgentSearch skills...

Renterd

A renter for Sia

Install / Use

/learn @SiaFoundation/Renterd
About this skill

Quality Score

0/100

Supported Platforms

Zed

README

Sia

GoDoc

renterd is an advanced Sia renter engineered by the Sia Foundation. Designed to cater to both casual users seeking straightforward data storage and developers requiring a robust API for building apps on Sia

Overview

renterd is the successor to siad, offering feature parity while extending its capabilities with new features like an enhanced web UI and an autopilot. That said, renterd does not support backwards compatibility with siad metadata. Consequently, files uploaded via siad cannot currently be migrated to renterd. Our immediate focus is on refining renterd to enhance its stability, scalability, and performance, ensuring it serves as a robust foundation for new Sia applications. Useful links:

Instant Syncing (Experimental)

New users can sync instantly using renterd --instant. When instant syncing, the renterd node initializes using a Utreexo-based checkpoint and can immediately validate blocks from that point forward without replaying the whole chain state. The state is extremely compact and committed in block headers, making this initialization both quick and secure.

Learn more

The wallet is required to only have v2 history to use instant syncing.

Database

renterd requires a database to store its operational data. We support both SQLite and MySQL, with SQLite set as the default due to its ease of setup. SQLite is ideal for testing and development purposes, whereas MySQL is recommended for production environments.

Configuration

renterd can be configured in various ways, through the use of a yaml file, CLI flags or environment variables. Settings that are configured multiple times will be evaluated in this order. In the CLI, use the help command to see an overview of all settings configurable through the CLI.

| Name | Description | Default Value | CLI Flag | Environment Variable | YAML Path | |--------------------------------------|------------------------------------------------------|-----------------------------------|----------------------------------|------------------------------------------------|----------------------------------------| | HTTP.Address | Address for serving the API | :9980 | --http | - | http.address | | HTTP.Password | Password for the HTTP server | - | - | RENTERD_API_PASSWORD | http.password | | Directory | Directory for storing node state | . | --dir | - | directory | | Seed | Seed for the node | - | - | RENTERD_SEED | seed | | AutoOpenWebUI | Automatically open the web UI on startup | true | --openui | - | autoOpenWebUI | | Network | Network to run on (mainnet/zen/anagami) | mainnet | --network | RENTERD_NETWORK | network | | ShutdownTimeout | Timeout for node shutdown | 5m | --node.shutdownTimeout | - | shutdownTimeout | | Log.Level | Global logger level (debug|info|warn|error). Defaults to 'info' | info | --log.level | RENTERD_LOG_LEVEL | log.level | | Log.File.Enabled | Enables logging to disk. Defaults to 'true' | true | --log.file.enabled | RENTERD_LOG_FILE_ENABLED | log.file.enabled | | Log.File.Format | Format of log file (json|human). Defaults to 'json' | json | --log.file.format | RENTERD_LOG_FILE_FORMAT | log.file.format | | Log.File.Path | Path of log file. Defaults to 'renterd.log' within the renterd directory | renterd.log | --log.file.path | RENTERD_LOG_FILE_PATH | log.file.path | | Log.StdOut.Enabled | Enables logging to stdout. Defaults to 'true' | true | --log.stdout.enabled | RENTERD_LOG_STDOUT_ENABLED | log.stdout.enabled | | Log.StdOut.Format | Format of log output (json|human). Defaults to 'human' | human | --log.stdout.format | RENTERD_LOG_STDOUT_FORMAT | log.stdout.format | | Log.StdOut.EnableANSI | Enables ANSI color codes in log output. Defaults to 'true' on non-Windows systems | true (false on Windows) | --log.stdout.enableANSI | RENTERD_LOG_STDOUT_ENABLE_ANSI | log.stdout.enableANSI | | Log.Database.Enabled | Enable logging database queries. Defaults to 'true' | true | --log.database.enabled | RENTERD_LOG_DATABASE_ENABLED | log.database.enabled | | Log.Database.Level | Logger level for database queries (info|warn|error). Defaults to 'warn' | warn | --log.database.level | RENTERD_LOG_DATABASE_LEVEL, RENTERD_LOG_LEVEL | log.database.level | | Log.Database.IgnoreRecordNotFoundError | Enable ignoring 'not found' errors resulting from database queries. Defaults to 'true' | true | --log.database.ignoreRecordNotFoundError | RENTERD_LOG_DATABASE_IGNORE_RECORD_NOT_FOUND_ERROR | log.database.ignoreRecordNotFoundError | | Log.Database.SlowThreshold | Threshold for slow queries in logger. Defaults to 500ms | 500ms | --log.database.slowThreshold | RENTERD_LOG_DATABASE_SLOW_THRESHOLD | log.database.slowThreshold | | Database.MySQL.URI | Database URI for the bus | - | --db.uri | RENTERD_DB_URI | database.mysql.uri | | Database.MySQL.User | Database username for the bus | renterd | --db.user | RENTERD_DB_USER | database.mysql.user | | Database.MySQL.Password | Database password for the bus | - | - | RENTERD_DB_PASSWORD | database.mysql.password | | Database.MySQL.Database | Database name for the bus | renterd | --db.name | RENTERD_DB_NAME | database.mysql.database | | Database.MySQL.MetricsDatabase | Database for metrics | renterd_metrics | --db.metricsName | RENTERD_DB_METRICS_NAME | database.mysql.metricsDatabase | | Database.SQLite.Database | SQLite database name | - | - | - | database.sqlite.database | | Database.SQLite.MetricsDatabase | SQLite metrics database name | - | - | - | database.sqlite.metricsDatabase | | Bus.AllowPrivateIPs | Allows hosts with private IPs | - | --bus.allowPrivateIPs | - | bus.allowPrivateIPs | | Bus.AnnouncementMaxAgeHours | Max age for announcements | 8760h (1 year) | --bus.announcementMaxAgeHours | - | bus.announcementMaxAgeHours | | Bus.Bootstrap | Bootstraps gateway and consensus modules | true | --bus.bootstrap | - | bus.bootstrap | | Bus.GatewayAddr | Address for Sia peer connections

Related Skills

View on GitHub
GitHub Stars93
CategoryDevelopment
Updated1d ago
Forks32

Languages

Go

Security Score

95/100

Audited on Mar 30, 2026

No findings