Aller au contenu

Configuration

SESHAT is configured via environment variables. Create a .env file in your project root or pass them directly to the MCP server.

ETH_PRIVATE_KEY string

Private key of your Ethereum wallet (with 0x prefix). Used for signing attestations on Base L2.

Fenêtre de terminal
ETH_PRIVATE_KEY=0x0123456789abcdef...
EAS_SCHEMA_UID string

Your registered schema UID on EAS (Ethereum Attestation Service).

Fenêtre de terminal
EAS_SCHEMA_UID=0xabcdef1234567890...

See EAS Schema Registration below.

GIT_HOST_API_URL string

API endpoint of your git hosting platform.

Fenêtre de terminal
# GitHub
GIT_HOST_API_URL=https://api.github.com
# GitLab
GIT_HOST_API_URL=https://gitlab.com/api/v4
# Forgejo/Gitea
GIT_HOST_API_URL=https://your-instance.com/api/v1
GIT_HOST_TOKEN string

API token with read:repo scope for your git host.

Fenêtre de terminal
GIT_HOST_TOKEN=ghp_xxxxxxxxxxxx
OBSIDIAN_ROOT string

Absolute path to your Obsidian vault root directory.

Fenêtre de terminal
OBSIDIAN_ROOT=/Users/you/Documents/Vault
NOTION_TOKEN string

Token d’integration interne Notion. Commence par ntn_ ou secret_.

Fenêtre de terminal
NOTION_TOKEN=ntn_xxxxxxxxxxxxxxxxxxxx
DB_PATH string

Path to the SQLite database file. Default: ./data/seshat.db

Fenêtre de terminal
DB_PATH=/var/lib/seshat/ledger.db
LOG_LEVEL string

Logging verbosity. Options: debug, info, warn, error. Default: info

Fenêtre de terminal
LOG_LEVEL=debug
ENABLE_TSA boolean

Enable RFC 3161 timestamps via FreeTSA. Default: false

Fenêtre de terminal
ENABLE_TSA=true
TSA_URL=https://freetsa.org/tsr
ENABLE_IPFS boolean

Enable encrypted IPFS storage via nft.storage. Default: false

Fenêtre de terminal
ENABLE_IPFS=true
NFT_STORAGE_TOKEN=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
ENABLE_PQC boolean

Enable ANSSI-compliant post-quantum signatures. Default: false

Fenêtre de terminal
ENABLE_PQC=true
PQC_LEVEL=87 # 44, 65, or 87
LevelAlgorithmNIST LevelSecurity
44ML-DSA-442128-bit
65ML-DSA-653192-bit
87ML-DSA-875256-bit

Before using SESHAT, you must register an attestation schema on EAS.

bytes32 projectId,
string category,
bytes32 fingerprint,
bytes32 treeHash,
string ref,
uint256 effortHours
  1. Go to EAS Explorer

    Visit base.easscan.org/schema/create

  2. Connect Wallet

    Connect the same wallet you’ll use for SESHAT

  3. Enter Schema

    Paste the schema definition above

  4. Set Resolver

    Leave resolver as 0x0000...0000 (no resolver)

  5. Register

    Submit the transaction (~EUR0.01 on Base)

  6. Copy UID

    Copy the resulting Schema UID and add to your .env

Fenêtre de terminal
# ===========================================
# SESHAT Configuration
# ===========================================
# Blockchain (Required)
ETH_PRIVATE_KEY=0x0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef
EAS_SCHEMA_UID=0xabcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890
# Git Host (Required)
GIT_HOST_API_URL=https://api.github.com
GIT_HOST_TOKEN=ghp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
# Obsidian (Required)
OBSIDIAN_ROOT=/Users/julien/Documents/Research
# Database
DB_PATH=./data/seshat.db
# Logging
LOG_LEVEL=info
# ===========================================
# Optional: Reinforced Proof Chain
# ===========================================
# RFC 3161 Timestamps
ENABLE_TSA=true
TSA_URL=https://freetsa.org/tsr
# IPFS Storage (encrypted)
ENABLE_IPFS=true
NFT_STORAGE_TOKEN=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
# Post-Quantum Signatures
ENABLE_PQC=true
PQC_LEVEL=87

Une fois installe, configurez SESHAT directement via votre agent IA :

Configure SESHAT avec mon GitHub et mon vault Obsidian

L’agent utilisera l’outil configure pour vous guider dans la configuration.