surfpool CLI; yerel Surfnet'leri başlatır, Runbook'ları çalıştırır, bir
çalışma alanı manifestinden Runbook'ları listeler, kabuk tamamlamalarını
oluşturur ve Surfpool MCP sunucusunu başlatır.
Komutlar
| Komut | Açıklama |
|---|---|
surfpool start | Yerel bir Surfnet başlatır. Takma ad: surfpool simnet |
surfpool run | Bir Runbook çalıştırır |
surfpool ls | Mevcut çalışma alanındaki Runbook'ları listeler |
surfpool completions | Kabuk tamamlama betikleri oluşturur |
surfpool mcp | Surfpool MCP sunucusunu başlatır |
surfpool start
Yerel bir Surfnet başlatır. Bir Solana program dizininde çalıştırırsanız, Surfpool programlarınızı dağıtan Runbook'lar oluşturup çalıştırabilir.
surfpool start [OPTIONS]
Ağ ve Portlar
| Bayrak | Kısa | Tür | Varsayılan | Açıklama |
|---|---|---|---|---|
--port <PORT> | -p | tamsayı | 8899 | JSON-RPC sunucusunu bu porta bağlar. |
--ws-port <PORT> | -w | tamsayı | 8900 | WebSocket sunucusunu bu porta bağlar. |
--host <HOST> | -o | string | 127.0.0.1 | RPC, WebSocket ve Studio servislerini bu ana makineye bağlar. |
--rpc-url <RPC_URL> | -u | string | yok | Bu veri kaynağı RPC URL'sinden çatallama yapar. --network ile çakışır. SURFPOOL_DATASOURCE_RPC_URL ile de ayarlanabilir. |
--network <NETWORK> | -n | enum | yok | Önceden tanımlanmış bir Solana ağından çatallama yapar. Değerler: mainnet, devnet, testnet. --rpc-url ile çakışır. |
--offline | yok | boolean | false | Uzak RPC veri kaynağı olmadan çalışır. |
Proje & Dağıtım
| Bayrak | Kısa | Tür | Varsayılan | Açıklama |
|---|---|---|---|---|
--manifest-file-path <MANIFEST_PATH> | -m | path | ./txtx.yml | Runbook manifest dosyasının yolu. |
--no-deploy | none | boolean | false | Otomatik program dağıtımlarını devre dışı bırakır. |
--runbook <RUNBOOK> | -r | string[] | deployment | Başlangıçtan sonra çalıştırılacak Runbook ID'si. Tekrarlanabilir. |
--runbook-input <INPUT_PATH> | -i | path[] | none | Runbook çalıştırması için sağlanacak giriş dosyası. Tekrarlanabilir. |
--yes | -y | boolean | false | Runbook oluşturma istemlerini atlar. |
--watch | none | boolean | false | Program yapıları değiştiğinde yeniden dağıtır. |
--artifacts-path <ARTIFACTS_PATH> | none | path | none | .so program yapılarını içeren dizin. Belirtilmediğinde varsayılan olarak target/deploy kullanılır. |
--legacy-anchor-compatibility | none | boolean | false | Eski Anchor test paketleri için uygun varsayılanları kullanır. |
--anchor-test-config-path <TEST_TOML> | none | path[] | none | İncelenecek Anchor Test.toml dosyası. Tekrarlanabilir. |
Hesaplar & Durum
| Bayrak | Kısa | Tür | Varsayılan | Açıklama |
|---|---|---|---|---|
--airdrop <PUBKEY> | -a | pubkey[] | none | Başlangıçta SOL airdrop yapılacak pubkey. Tekrarlanabilir. |
--airdrop-keypair-path <KEYPAIR_PATH> | -k | path[] | ~/.config/solana/id.json | Pubkey'i airdrop alacak keypair dosya yolu. Tekrarlanabilir. |
--airdrop-amount <LAMPORTS> | -q | integer | 10000000000000 | Başlangıçtaki her hesaba airdrop yapılacak lamport miktarı. |
--snapshot <SNAPSHOT_PATH> | none | path[] | none | Önceden yüklenecek JSON hesap anlık görüntüsü. Tekrarlanabilir. Sonraki dosyalar, yinelenen anahtarlar için önceki dosyaların üzerine yazar. |
--db <DB_URL> | none | string | none | Kalıcı Surfnet durumu için veritabanı bağlantı URL'si. Bellek içi SQLite için :memory:, disk üzerinde SQLite için .sqlite dosyası veya postgres özelliğiyle derlendiyse PostgreSQL URL'si kullanın. |
--surfnet-id <SURFNET_ID> | none | string | default | Bu Surfnet örneği için depolama ad alanı. |
Çalışma Zamanı & Arayüz
| Bayrak | Kısa | Tür | Varsayılan | Açıklama |
|---|---|---|---|---|
--no-tui | yok | boolean | false | Terminal arayüzünü başlatmak yerine logları yazdırır. |
--no-studio | yok | boolean | false | Surfpool Studio'yu devre dışı bırakır. |
--studio-port <PORT> | -s | integer | 18488 | Studio'yu bu porta bağlar. |
--daemon | yok | boolean | false | Surfpool'u arka planda çalıştırır. Daemon modu yalnızca Linux'ta desteklenir. |
--ci | yok | boolean | false | CI için uygun ayarları kullanır. Bu seçenek TUI, Studio, komut profilleme ve log çıktısını devre dışı bırakır. |
SVM Davranışı
| Bayrak | Kısa | Tür | Varsayılan | Açıklama |
|---|---|---|---|---|
--slot-time <MILLISECONDS> | -t | integer | 400 | Slot süresi (milisaniye cinsinden). |
--block-production-mode <MODE> | -b | enum | clock | Blok üretim modu. |
--feature <FEATURE_PUBKEY> | -f | pubkey[] | yok | pubkey ile bir SVM özelliğini etkinleştirir. Tekrarlanabilir. Özellik adları kullanımdan kaldırılmıştır ancak önceden desteklenen adlar için hâlâ kabul edilmektedir. |
--disable-feature <FEATURE_PUBKEY> | yok | pubkey[] | yok | pubkey ile bir SVM özelliğini devre dışı bırakır. Tekrarlanabilir. Özellik adları kullanımdan kaldırılmıştır ancak önceden desteklenen adlar için hâlâ kabul edilmektedir. |
--features-all | yok | boolean | false | agave-feature-set sürümündeki tüm SVM özelliklerini etkinleştirir. |
--skip-signature-verification | yok | boolean | false | İşlem imzası doğrulamasını atlar. |
--skip-blockhash-check | yok | boolean | false | İşlem blockhash doğrulamasını atlar. |
Gözlemlenebilirlik ve Performans
| Bayrak | Kısa | Tür | Varsayılan | Açıklama |
|---|---|---|---|---|
--geyser-plugin-config <PLUGIN_CONFIG_PATH> | -g | path[] | none | Yüklenecek Geyser eklenti yapılandırma dosyası. Tekrarlanabilir. |
--disable-instruction-profiling | none | boolean | false | Komut profili oluşturmayı devre dışı bırakır. |
--max-profiles <COUNT> | -c | integer | 200 | Bellekte tutulacak işlem profili sayısı. Daha yüksek değerler bellek kullanımını artırır. |
--log-bytes-limit <BYTES> | none | integer | 10000 | Her işlem günlüğü için depolanan maksimum bayt sayısı. Sınırsız günlük için 0 olarak ayarlayın. |
--log-level <LEVEL> | -l | enum | info | Simnet günlük seviyesi. Değerler: trace, debug, info, warn, error, none. |
--log-path <LOG_DIR> | none | path | .surfpool/logs | Simnet günlükleri için dizin. |
--metrics-enabled | none | boolean | env: SURFPOOL_METRICS_ENABLED | Prometheus metrik uç noktasını etkinleştirir. Surfpool, prometheus özelliğiyle derlendiğinde kullanılabilir. |
--metrics-addr <METRICS_ADDR> | none | string | 127.0.0.1:9000 | Prometheus metrik uç noktası adresi. SURFPOOL_METRICS_ADDR ile de ayarlanabilir. Surfpool, prometheus özelliğiyle derlendiğinde kullanılabilir. |
Kullanımdan Kaldırılmış Uyumluluk
| Bayrak | Kısa | Tür | Varsayılan | Açıklama |
|---|---|---|---|---|
--subgraph-db <SUBGRAPH_DB> | -d | string | :memory: | Kullanımdan kaldırılmış ve surfpool start --help içinden gizlenmiştir. Mevcut betikler uyumluluk için bu parametreyi hâlâ kullanabilir. |
Örnekler
Varsayılan ayarlarla başlat:
surfpool start
Devnet'i çatalla:
surfpool start --network devnet
Özel bir veri kaynağı RPC URL'si kullan:
surfpool start --rpc-url https://api.mainnet-beta.solana.com
TUI başlatmak yerine günlükleri yazdırın:
surfpool start --no-tui
Uzak bir RPC veri kaynağı olmadan başlatın:
surfpool start --offline
Birden fazla hesaba SOL havadan dağıtın:
surfpool start --airdrop <PUBKEY> --airdrop <PUBKEY>
Anlık görüntülerden hesap durumunu yükleyin:
surfpool start --snapshot ./snapshot1.json --snapshot ./snapshot2.json
target/deploy değiştiğinde programları yeniden dağıtın:
surfpool start --watch
Surfnet durumunu diskteki bir SQLite veritabanında kalıcı hale getirin:
surfpool start --db ./surfnet.sqlite --surfnet-id local-dev
surfpool run
Bir Runbook çalıştırır. Bir .tx dosyasını doğrudan çalıştırabilir veya bir
txtx.yml manifestosunda tanımlanmış bir Runbook'a başvurabilirsiniz.
surfpool run [OPTIONS] <RUNBOOK>
Argümanlar
| Argüman | Tür | Açıklama |
|---|---|---|
<RUNBOOK> | string | txtx.yml'deki Runbook kimliği veya bir .tx dosyasının yolu. |
Proje
| Bayrak | Kısa | Tür | Varsayılan | Açıklama |
|---|---|---|---|---|
--manifest-file-path <MANIFEST_PATH> | -m | yol | ./txtx.yml | Runbook manifestosunun yolu. |
--env <ENVIRONMENT> | yok | string | yok | Kullanılacak txtx.yml ortamı. |
Çalıştırma Modu
Bu bayraklar birbirini dışlar. Hiçbiri belirtilmezse, Surfpool tarayıcı denetimini kullanır.
| Bayrak | Kısa | Tür | Varsayılan | Açıklama |
|---|---|---|---|---|
--unsupervised | -u | boolean | false | Denetleyici arayüzü olmadan çalıştırır. |
--browser | -b | boolean | varsayılan mod | Tarayıcı arayüzünde denetimle çalıştırır. |
--terminal | -t | boolean | false | Terminal konsolunda denetimle çalıştırır. |
Girdiler ve Çıktılar
| Bayrak | Kısa | Tür | Varsayılan | Açıklama |
|---|---|---|---|---|
--output-json [<OUTPUT_DIR>] | yok | isteğe bağlı yol | yok | Runbook çıktılarını JSON olarak yazdır veya yaz. Bir dizin belirtildiğinde, çıktı o dizindeki bir dosyaya yazılır. |
--output <OUTPUT_NAME> | yok | dize | yok | Yürütmenin sonunda adlandırılmış bir çıktıyı yazdır. --output-json ile çakışır. |
--input <INPUT_PATH> | yok | yol[] | yok | Toplu işlem için kullanılacak giriş dosyası. Tekrarlanabilir. |
Yürütme
| Bayrak | Kısa | Tür | Varsayılan | Açıklama |
|---|---|---|---|---|
--explain | yok | boolean | false | Runbook'un nasıl yürütüleceğini açıklar. |
--force | -f | boolean | false | Önbelleğe alınmış yürütme durumunu yoksay. |
Süpervizör Arayüzü
Bu bayraklar, Surfpool supervisor_ui özelliğiyle derlendiğinde kullanılabilir.
| Bayrak | Kısa | Tür | Varsayılan | Açıklama |
|---|---|---|---|---|
--port <PORT> | -p | tamsayı | 8488 | Web arayüzü portu. |
--ip <IP_ADDRESS> | -i | dize | 127.0.0.1 | Web arayüzü IP adresi. |
Günlükleme
| Bayrak | Kısa | Tür | Varsayılan | Açıklama |
|---|---|---|---|---|
--log-level <LEVEL> | -l | enum | info | Runbook yürütme günlük seviyesi. Değerler: trace, debug, info, warn, error. |
--log-path <LOG_DIR> | yok | yol | .surfpool/logs | Runbook yürütme günlükleri için dizin. |
Örnekler
Tarayıcı denetimiyle bir manifest Runbook çalıştırın:
surfpool run deployment
Denetim olmadan çalıştırın ve JSON çıktıları yazın:
surfpool run deployment --unsupervised --output-json .surfpool/runbook-outputs
Bir .tx dosyasını doğrudan çalıştırın:
surfpool run ./runbooks/deployment.tx
surfpool ls
Çalışma alanı manifest dosyasında tanımlanan tüm Runbook'ları listeler.
surfpool ls [OPTIONS]
| Bayrak | Kısa | Tür | Varsayılan | Açıklama |
|---|---|---|---|---|
--manifest-file-path <MANIFEST_PATH> | -m | yol | ./txtx.yml | Runbook manifest dosyasının yolu. |
surfpool completions
Kabuk tamamlama betikleri oluşturur.
surfpool completions <SHELL>
| Argüman | Tür | Açıklama |
|---|---|---|
<SHELL> | enum | Tamamlama oluşturulacak kabuk. Değerler: bash, elvish, fish, powershell, zsh. |
surfpool mcp
AI araç entegrasyonu için Surfpool MCP sunucusunu başlatır.
surfpool mcp
Is this page helpful?