-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.env.example
More file actions
130 lines (117 loc) · 5.71 KB
/
Copy path.env.example
File metadata and controls
130 lines (117 loc) · 5.71 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
# Daski provider starter — Base Sepolia / Testnet template
#
# This repository is the full-featured provider starter.
# Copy to .env and replace every REPLACE_* value. npm run dev and npm start
# load .env through Node's native environment-file support. Never commit .env.
# Ask Daski provider onboarding for the current Testnet contracts, signer
# bindings, and signed standard-rail artifacts; do not invent these values.
# Less common tunables and their safe defaults are documented inline in
# src/core/config.ts.
# Runtime
NODE_ENV=development
PORT=4000
# Optional public commit, tag, or build identifier for the health summary.
# DEPLOYMENT_REVISION=
BASE_URL=https://REPLACE_WITH_YOUR_PUBLIC_PROVIDER_ORIGIN
GATEWAY_BASE_URL=https://REPLACE_WITH_DASKI_TESTNET_GATEWAY_ORIGIN
CHAIN_MODE=live
# Provider identity shown in ERC-8004 discovery and AgentCards
PROVIDER_NAME=REPLACE_WITH_YOUR_LEGAL_PROVIDER_NAME
PROVIDER_DESCRIPTION=REPLACE_WITH_A_SHORT_PUBLIC_DESCRIPTION
PROVIDER_WEBSITE_URL=https://REPLACE_WITH_YOUR_WEBSITE
PROVIDER_ICON_URL=https://REPLACE_WITH_YOUR_ICON
MARKETPLACE_TERMS_URL=https://REPLACE_WITH_DASKI_TERMS
MARKETPLACE_PRIVACY_URL=https://REPLACE_WITH_DASKI_PRIVACY_NOTICE
PROVIDER_TERMS_URL=https://REPLACE_WITH_YOUR_PROVIDER_TERMS
PROVIDER_PRIVACY_URL=https://REPLACE_WITH_YOUR_PRIVACY_NOTICE
SUPPORT_EMAIL=support@example.com
SUPPORT_RESPONSE_SLA=1 business day
# PostgreSQL. Local development may use one role. Production requires a
# separate schema-owner URL for migrations and verified TLS.
DATABASE_URL=postgresql://daski_provider:local-only-provider-password@127.0.0.1:55432/daski_provider
# MIGRATION_DATABASE_URL=postgresql://schema_owner:REPLACE@db.example/provider
DATABASE_SSL_MODE=disable
# DATABASE_CA_CERT=REPLACE_WITH_PEM_CONTENT
# Base Sepolia (chain id 84532). Review these public addresses against the
# current Daski Testnet manifest before use.
CHAIN_ID=84532
BASE_RPC_URL=https://sepolia.base.org
BASE_RPC_FALLBACK_URLS=
IDENTITY_REGISTRY_ADDRESS=0x8004A818BFB912233c491871b3d84c89A494BD9e
SERVICE_REGISTRY_ADDRESS=0x79114da4DA6FbEcF1897950BB051b55c8d839840
PROVIDER_REGISTRY_ADDRESS=0xba7d08a4851975b3e80550b9aa4aA6092dCBC909
AGENT_INDEX_ADDRESS=0xA9b7ff6158E51581F253a8234EAC79411FB0e1cf
USDC_ADDRESS=0x036cbd53842c5426634e7929541ec2318f3dcf7e
CHAIN_WRITE_FINALITY_CONFIRMATIONS=12
# Provider registration. Use a dedicated Testnet wallet. The registration
# script prints the minted agent id; set it here after onboarding.
PROVIDER_AGENT_ID=REPLACE_WITH_ERC_8004_AGENT_ID
PROVIDER_WALLET_PRIVATE_KEY=0xREPLACE_WITH_64_HEX_TESTNET_PRIVATE_KEY
# Standard Exact-EVM rail. The gateway global-policy bundle and the runtime
# listing catalog installed by `npm run daski:register` replace the retired
# static per-outcome configuration. JSON values are intentionally blank here.
STANDARD_RAIL_ENVIRONMENT=testnet
STANDARD_RAIL_GATEWAY_SIGNER=0xREPLACE_WITH_GATEWAY_PROTOCOL_SIGNER
STANDARD_RAIL_GATEWAY_AUDIENCE=https://REPLACE_WITH_DASKI_TESTNET_GATEWAY_ORIGIN
STANDARD_RAIL_GATEWAY_ORIGIN=https://REPLACE_WITH_DASKI_TESTNET_GATEWAY_ORIGIN
STANDARD_RAIL_PROVIDER_AUDIENCE=https://REPLACE_WITH_YOUR_PUBLIC_PROVIDER_ORIGIN
REPUTATION_STORAGE_ADDRESS=0xREPLACE_WITH_REPUTATION_STORAGE
EAS_ADDRESS=0x4200000000000000000000000000000000000021
EAS_RUNTIME_CODE_HASH=0xREPLACE_WITH_64_HEX_RUNTIME_CODE_HASH
EAS_OUTCOME_SCHEMA_UID=0xREPLACE_WITH_64_HEX_SCHEMA_UID
SANCTIONS_ORACLE_ADDRESS=0xREPLACE_WITH_SANCTIONS_ORACLE
STANDARD_RAIL_PROVIDER_CONTROL_PROFILE_HASH=0xREPLACE_WITH_64_HEX_PROFILE_HASH
STANDARD_RAIL_GLOBAL_POLICY_JSON=
STANDARD_RAIL_SERVICING_ADMISSION_JSON=
STANDARD_RAIL_ASSET_ACTION_CATALOG_JSON=
STANDARD_RAIL_FINALITY_CONFIRMATIONS=12
# Application secrets. Generate independent values; never reuse the wallet key.
# Example: openssl rand -hex 32
ADMIN_TOKEN=REPLACE_WITH_AT_LEAST_32_HIGH_ENTROPY_CHARACTERS
PROVIDER_DATA_ENCRYPTION_KEY=0xREPLACE_WITH_64_HEX_INDEPENDENT_DATA_KEY
PROVIDER_DATA_ENCRYPTION_KEY_ID=primary
PROVIDER_DATA_ENCRYPTION_PREVIOUS_KEYS=
# LLMs are used only when a service enables pre-execution review or when the
# operator/email agents are used. The dummy service keeps review disabled.
# Omit OPENAI_API_KEY until one of those optional features is enabled.
# OPENAI_API_KEY=
LLM_MODEL=gpt-5.4-mini
# EMAIL_AGENT_LLM_MODEL=gpt-5.4-mini
# OPERATOR_AGENT_LLM_MODEL=gpt-5.4-mini
# Admin and browser access
ADMIN_WALLET_ALLOWLIST=
CORS_ORIGINS=
# Optional email integration. Production requires the webhook secret even if
# inbound email routes are otherwise unused.
# POSTMARK_SERVER_TOKEN=
# POSTMARK_TEST_MODE=true
# POSTMARK_INBOUND_WEBHOOK_SECRET=
# POSTMARK_INBOUND_WEBHOOK_SECRET_PREVIOUS=
# Common safety and operations controls
SUPPLIER_BREAKER_WINDOW_MINUTES=30
SUPPLIER_BREAKER_THRESHOLD=5
ESCALATION_MAX_HOLD_HOURS=72
RATE_LIMIT_SERVICE_CAPACITY=30
RATE_LIMIT_SERVICE_PER_MIN=30
RATE_LIMIT_A2A_CAPACITY=120
RATE_LIMIT_A2A_PER_MIN=120
RATE_LIMIT_BYPASS_IPS=
TRUST_PROXY_HOPS=0
TRUST_PROXY_CIDRS=
EDGE_RATE_LIMIT_VERIFIED=false
PUSH_NOTIFICATION_ALLOW_HTTP=false
# Production checklist: NODE_ENV=production, HTTPS BASE_URL, verified database
# TLS, a separate MIGRATION_DATABASE_URL, a 32+ character webhook secret, and
# reviewed proxy/rate-limit settings. Base mainnet adds stricter checks and
# refuses to boot while the dummy service is installed.
# Local mock mode is provider-only and cannot replace the standard rail:
# CHAIN_MODE=mock
# BASE_URL=http://127.0.0.1:4000
# MOCK_BUYER_AGENT_ID=99
# MOCK_BUYER_WALLET_ADDRESS=0xREPLACE_WITH_AUTHORIZED_LOCAL_BUYER
#
# Full server boot still requires valid signed standard-rail artifacts. The
# Daski gateway deliberately has no local fake facilitator.
#
# Add your service-specific variables below and parse them in
# src/services/<slug>/config.ts. Keep credentials out of manifests and docs.