{"id":47238760,"url":"https://github.com/doli-network/doli","last_synced_at":"2026-06-04T17:00:35.959Z","repository":{"id":334504574,"uuid":"1141544443","full_name":"doli-network/doli","owner":"doli-network","description":"A peer-to-peer electronic cash system based on verifiable time","archived":false,"fork":false,"pushed_at":"2026-05-30T10:14:08.000Z","size":57729,"stargazers_count":2,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-30T11:16:05.802Z","etag":null,"topics":["atomic-swaps","blockchain","consensus","cryptocurrency","defi","p2p","proof-of-time","rust"],"latest_commit_sha":null,"homepage":"https://doli.network","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/doli-network.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"docs/security_model.md","support":null,"governance":null,"roadmap":"docs/ROADMAP-scaling.md","authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-01-25T01:52:46.000Z","updated_at":"2026-05-26T22:41:19.000Z","dependencies_parsed_at":"2026-03-01T01:05:59.922Z","dependency_job_id":"ab8462ee-6239-486e-abda-eee9fa5aff6d","html_url":"https://github.com/doli-network/doli","commit_stats":null,"previous_names":["ivlozada/doli","e-weil/doli","doli-network/doli"],"tags_count":256,"template":false,"template_full_name":null,"purl":"pkg:github/doli-network/doli","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/doli-network%2Fdoli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/doli-network%2Fdoli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/doli-network%2Fdoli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/doli-network%2Fdoli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/doli-network","download_url":"https://codeload.github.com/doli-network/doli/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/doli-network%2Fdoli/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33914548,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-04T02:00:06.755Z","response_time":64,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["atomic-swaps","blockchain","consensus","cryptocurrency","defi","p2p","proof-of-time","rust"],"created_at":"2026-03-14T00:01:14.638Z","updated_at":"2026-06-04T17:00:35.953Z","avatar_url":"https://github.com/doli-network.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# DOLI\n\n**A Peer-to-Peer Electronic Cash System Built by Agents, for an Agentic Era**\n\n\u003e Consensus weight emerges from bonded capital anchored by sequential time — not trust, not scale, and not purchasable acceleration.\n\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)\n\n**Website:** [doli.network](https://doli.network) | **Explorer:** [explorer.doli.network](https://explorer.doli.network) | **Marketplace:** [doli.network/marketplace.html](https://doli.network/marketplace.html) | **Whitepaper:** [WHITEPAPER.md](WHITEPAPER.md)\n\n## What is DOLI?\n\nDOLI is a cryptocurrency where the scarce resource is **time** — the one resource that cannot be accumulated, parallelized, or purchased. One second passes at the same rate for an individual as for a nation-state.\n\nDOLI is built entirely by [OMEGA](https://github.com/omegacortex), a multi-agent AI workflow system where specialized agents — architect, developer, reviewer, auditor, QA — collaborate through shared institutional memory. Every line of code passes through multiple validation layers before it reaches the chain. This isn't a blockchain with an AI wrapper bolted on; it's a blockchain engineered from genesis by agents, with every design decision made for machine-readability first.\n\n- **No premine, no ICO, no treasury.** Every coin comes from block rewards.\n- **No mining pools needed.** The protocol is the pool — epoch rewards are distributed on-chain to all qualified producers.\n- **No special hardware.** Any CPU can participate. A $5/month VPS is sufficient.\n- **Equal ROI for all.** A producer with 1 bond earns the same percentage return as one with 3,000 bonds.\n\n## Agent-Native by Design\n\nMost blockchains were designed for human developers reading docs. Their errors are cryptic strings, their state is implicit, and their scheduling is opaque. Retrofitting good agent design onto a mature chain is extremely painful — Ethereum has been trying for years.\n\nDOLI was designed during the agentic transition. Every interface speaks the language agents understand: structured data, stable codes, explicit state, and deterministic timing.\n\n### Structured Errors for Self-Correction\n\n47 machine-readable error codes with structured JSON responses. When a transaction fails, agents don't parse strings — they read `error_code`, understand the failure, and self-correct:\n\n```json\n{\n  \"code\": -32002,\n  \"message\": \"validation failed: insufficient funds\",\n  \"data\": {\n    \"error_code\": \"INSUFFICIENT_FUNDS\",\n    \"stage\": \"mempool_validation\",\n    \"inputs\": 500,\n    \"outputs\": 1000\n  }\n}\n```\n\nEvery error carries a **stage** field (`deserialization`, `mempool`, `mempool_validation`) so agents know exactly where in the pipeline the failure occurred.\n\n### Explicit State via UTXO Model\n\nUnlike account-based chains where agents must simulate the entire state transition to predict outcomes, DOLI's UTXO model makes every coin an individually queryable object. An agent can call `getUtxos`, select specific coins by outpoint, know the exact state before broadcasting, and get told which specific UTXO failed and why. No gas estimation guessing. No state simulation.\n\n### Deterministic Scheduling\n\n`getSlotSchedule` tells agents exactly which producer handles which slot. `getProducerSchedule` shows when a specific producer is next up. Timing is predictable, not probabilistic.\n\n### Agent-Readable Skills\n\nDOLI ships with 20 [skill files](.claude/skills/) committed to the repository — structured knowledge maps that give any AI agent deep understanding of the codebase. Each skill covers a domain (consensus, networking, storage, RPC, CLI, wallet, etc.) with indexed entry points, data flows, constraints, and patterns. An agent can grep the [SKILLS-INDEX](.claude/skills/SKILLS-INDEX.md) for any keyword and jump directly to the relevant code section.\n\nThese aren't documentation written for humans to skim. They're machine-optimized navigation data: `@INDEX` headers for offset-based loading, line-range references for surgical reads, and cross-domain dependency maps. Any agent — not just OMEGA — can use them to understand, operate, debug, and extend the blockchain.\n\n## How It Works\n\n**Block production** follows deterministic bond-weighted scheduling: each producer receives block assignments proportional to their bond count. Both production frequency and epoch rewards scale linearly with bonds — ensuring identical ROI percentage for all participants.\n\n**Rewards** accumulate into an epoch pool (360 blocks, ~1 hour) and are distributed proportionally by bond weight to all producers who proved continuous presence via on-chain liveness attestations.\n\n**Programmable outputs** without a virtual machine: NFTs, fungible tokens, AMM pools, lending, and cross-chain bridges are native UTXO output types with declarative spending conditions — no gas, no EVM, no shared mutable state.\n\n| System | Scarce Resource | Selection | Min Hardware | Pools Needed |\n|--------|----------------|-----------|-------------|-------------|\n| Bitcoin | Energy | Lottery (hashpower) | ASIC ($5,000+) | Yes |\n| Ethereum | Capital (32 ETH) | Lottery (stake) | Server ($100K+) | Yes |\n| Solana | Capital (stake) | Stake-weighted | $10K+ server | Yes |\n| **DOLI** | **Time** | **Deterministic bond-weighted** | **Any CPU ($5/mo)** | **Built-in** |\n\n## Quick Start\n\nA basic VPS with 2 cores, 2 GB RAM, and 20 GB SSD (~$4/month) is all you need.\n\n```bash\n# 0. Remove previous installation (if any)\nsudo doli service stop 2\u003e/dev/null; sudo rm -f /usr/bin/doli /usr/bin/doli-node\n\n# 1. Install\ncurl -sSfL https://doli.network/install.sh | sudo sh\n\n# 2. Create wallet + BLS key\ndoli init\n\n# 3. Start the node\nsudo doli service install\n\n# 4. Verify your node is synced\ndoli chain\n\n# 5. Request 10.01 DOLI from the faucet\n#    Open a faucet request — paste your address (doli info) and doli chain output\n#    Wait ~7 minutes for the bot to process\n\n# 6. Verify you received the DOLI\ndoli balance\n\n# 7. Register as producer\ndoli producer register --bonds 1\n```\n\n**Permission model:** Wallet commands (`doli send`, `doli balance`) never need sudo. System commands (`doli service install`, `doli upgrade`, `doli snap`) do.\n\nFull guide: [doli.network/guide.html](https://doli.network/guide.html)\n\n### Build from Source\n\n```bash\ngit clone https://github.com/doli-network/doli.git\ncd doli\ncargo build --release\nsudo cp target/release/doli-node target/release/doli /usr/bin/\n```\n\n## Architecture\n\nDOLI is implemented as a Rust workspace:\n\n| Crate | Description |\n|-------|-------------|\n| `crypto` | BLAKE3 hashing, Ed25519 + BLS12-381 signatures, bech32m addresses |\n| `doli-core` | Transactions (30 types), validation, consensus parameters, conditions, EpochState |\n| `storage` | RocksDB state database, block store, UTXO set, producer set |\n| `network` | libp2p P2P networking, gossipsub, Kademlia DHT, sync engine |\n| `mempool` | Transaction pool with UTXO verification and chained tx support |\n| `rpc` | JSON-RPC server (45+ methods) |\n| `bridge` | Cross-chain atomic swap library (Bitcoin, Ethereum) |\n| `wallet` | Transaction builder, UTXO selection, key management |\n| `updater` | Auto-update system, hard fork scheduling |\n| `doli-node` | Full node binary |\n| `doli-cli` | Command-line wallet and utilities |\n\n## Protocol Parameters\n\n| Parameter | Value |\n|-----------|-------|\n| Block time | 10 seconds |\n| Epoch | 360 slots (1 hour) |\n| Era | 12,614,400 blocks (~4 years) |\n| Total supply | 25,228,800 DOLI |\n| Block reward (Era 1) | 1 DOLI |\n| Halving | Every era (~4 years) |\n| Bond unit | 10 DOLI |\n| Max bonds/producer | 3,000 (30,000 DOLI) |\n| Liveness threshold | 90% attestation per epoch |\n| Unbonding period | 7 days |\n| Slashing (double production) | 100% of bond |\n| Hash function | BLAKE3-256 |\n| Signatures | Ed25519 (transactions) + BLS12-381 (attestation aggregation) |\n| Addresses | Bech32m (doli1...) |\n\n## Native DeFi\n\nAll financial primitives are compiled UTXO output types — no VM, no gas, no reentrancy:\n\n| Primitive | Output Type | Description |\n|-----------|------------|-------------|\n| Transfers | Normal | Standard P2PKH payments |\n| Staking | Bond | Producer bonds with FIFO vesting |\n| NFTs | UniqueAsset | On-chain art, royalties, batch minting |\n| Tokens | FungibleAsset | User-issued fixed-supply tokens |\n| AMM Pools | Pool + LPShare | Constant-product AMM (x*y=k), 0.3% fee |\n| Lending | Collateral + LendingDeposit | Collateralized loans with TWAP oracle |\n| Bridges | BridgeHTLC | Atomic swaps: BTC, ETH, BSC, LTC, XMR, ADA |\n| Multisig | Multisig | N-of-M authorization |\n| Timelocks | HTLC, Vesting | Hash + time locked outputs |\n\nMEV and sandwich attacks are structurally impossible: the pool is a UTXO consumed atomically — two swaps referencing the same pool are mutually exclusive.\n\n## Documentation\n\n- [Whitepaper](WHITEPAPER.md) — Complete technical specification\n- [Whitepaper (Spanish)](WHITEPAPER-es.md) — Especificacion tecnica completa\n- [Architecture](docs/architecture.md) — System design and components\n- [RPC Reference](docs/rpc_reference.md) — All 45+ JSON-RPC methods\n- [CLI Reference](docs/cli.md) — Command-line wallet and node usage\n- [Agentic Readiness Report](docs/agentic-era-readiness-report.md) — How DOLI is designed for AI agents\n- [Skills Index](.claude/skills/SKILLS-INDEX.md) — Agent-optimized codebase navigation\n\n## Networks\n\n| Network | Address Prefix | Purpose |\n|---------|---------------|---------|\n| Mainnet | `doli1...` | Production network |\n| Testnet | `tdoli1...` | Public test network |\n| Devnet | `ddoli1...` | Local development |\n\n```bash\ndoli-node run                      # Mainnet (default)\ndoli-node --network testnet run    # Testnet\ndoli-node --network devnet run     # Devnet\n```\n\n## License\n\nMIT\n\n---\n\n*\"Time is the only fair currency.\"*\n\nD. Guanipa \u0026middot; [daniel@doli.network](mailto:daniel@doli.network) | I. Lozada \u0026middot; [ivan@doli.network](mailto:ivan@doli.network) | A. Lozada \u0026middot; [antonio@doli.network](mailto:antonio@doli.network)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdoli-network%2Fdoli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdoli-network%2Fdoli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdoli-network%2Fdoli/lists"}