🏠 BerandaInstalasiQuick StartAI ProvidersPanduan Biaya AIPlatform ExportHTML Themesimage:scrapeimage:exportclear:datatokenpromptsitepost:publishsite:deploymcp:serveKonfigurasi

Konfigurasi

Semua konfigurasi Shuriken ada di folder config/. Nilai default bisa di-override via CLI option.


config/ai.php

Konfigurasi untuk semua AI provider.

image_count

Jumlah gambar yang disertakan dalam prompt AI (bukan jumlah gambar yang di-scrape).

'image_count' => 2,

tones

Daftar gaya penulisan yang dipilih secara acak per generate:

'tones' => ['personal', 'professional', 'engaging', 'black', 'white', 'asian', 'funny'],

Token Provider

Token tidak perlu diedit di file ini — gunakan command token:

php shuriken token add openai sk-proj-...
php shuriken token add groq gsk_...
php shuriken token list

Token disimpan di storage/tokens.json dan dimuat otomatis saat startup. Bisa tambah lebih dari satu token per provider — Shuriken akan round-robin otomatis. Lihat referensi lengkap: token.

Model per Provider

Default model untuk setiap provider:

'openai_options'      => ['model' => 'gpt-4.1-mini', 'max_tokens' => 1000],
'gemini_options'      => ['model' => 'gemini-2.5-flash'],
'claude_options'      => ['model' => 'claude-haiku-4-5', 'max_tokens' => 1024],
'deepseek_options'    => ['model' => 'deepseek-chat'],
'groq_options'        => ['model' => 'llama-3.3-70b-versatile'],
'openrouter_options'  => ['model' => 'google/gemini-2.5-flash'],
'kimi_options'        => ['model' => 'moonshot-v1-8k'],
'grok_options'        => ['model' => 'grok-2-1212'],
'mistral_options'     => ['model' => 'mistral-small-latest'],
'together_options'    => ['model' => 'meta-llama/Llama-3-8b-instruct'],
'perplexity_options'  => ['model' => 'llama-3.1-sonar-small-128k-online'],
'fireworks_options'   => ['model' => 'accounts/fireworks/models/llama-v3p3-70b-instruct'],
'cerebras_options'    => ['model' => 'llama-3.3-70b'],
'siliconflow_options' => ['model' => 'Qwen/Qwen2.5-7B-Instruct'],
'novita_options'      => ['model' => 'meta-llama/llama-3.3-70b-instruct'],

Provider Lokal

Tidak butuh token:

'ollama_options'  => ['model' => 'llama3.2', 'base_url' => 'http://localhost:11434/v1'],
'lmstudio_options' => ['model' => 'local-model', 'base_url' => 'http://localhost:1234/v1'],

CLI Provider

'claude_cli_options' => ['command' => 'claude'],
'gemini_cli_options' => ['command' => 'gemini'],

Untuk Windows atau custom path, ubah command-nya:

'claude_cli_options' => ['command' => 'C:\\Users\\user\\AppData\\Roaming\\npm\\claude.cmd'],

config/shuriken.php

Konfigurasi default untuk image:scrape.

return [
    'language'         => 'en',       // Kode bahasa
    'country'          => 'us',       // Kode negara
    'proxy'            => '',          // URL proxy (kosong = tidak pakai)
    'max'              => 1000,        // Maksimal keyword
    'preset'           => 'https://www.bing.com/images/search?q=',
    'keywords_txt'     => false,       // Baca keyword dari keyword.txt
    'keywords'         => false,       // Keyword dari CLI
    'trends'           => false,       // Gunakan Google Trends
    'append_query'     => '',          // Query tambahan di URL Bing
    'image_count'      => 35,          // Jumlah gambar per keyword
    'execute_javascript' => false,     // Jalankan JS (untuk image_count > 9)
    'concurrency'      => 5,           // Proses paralel
    'requestDelay'     => 0,           // Delay antar request (ms)
    'timeout'          => 30,          // Timeout per scrape (detik)
    'ai'               => false,       // Aktifkan AI content generation
    'provider'         => 'openai',    // Provider AI default
    'memory_db'        => false,       // Gunakan in-memory SQLite
    'prompt'           => 'image',     // Template prompt (image/recipe/list/review/faq/tutorial/comparison — atau custom)
    'no_expand'        => false,       // Nonaktifkan keyword expansion
    'suggest'          => false,       // Tambah keyword via Bing Suggest
    'model'            => null,        // Override model AI (null = pakai default)
];

Semua key di sini bisa di-override via CLI option. Contoh:

# Override dari CLI
php shuriken image:scrape --language=id --country=id --concurrency=20

config/export.php

Konfigurasi default untuk image:export.

return [
    'platform'               => 'wordpress',   // Platform export default
    'category'               => 'Uncategorized',
    'start'                  => Carbon::now()->subYear(), // 1 tahun lalu
    'end'                    => Carbon::now(),             // Hari ini
    'chunk'                  => 50000,          // Maksimal post per file
    'theme'                  => 'default',      // Tema HTML
    'site_name'              => '',             // Nama website (HTML)
    'description'            => '',             // Deskripsi website (HTML)
    'clear_post'             => false,          // Hapus exports/ sebelum export
];

config/prompts.php

Template prompt yang dikirim ke AI. Tujuh built-in template tersedia — plus custom prompt via prompt add.

Nama Keterangan
image Blog post standar dengan gambar — default
recipe Resep dengan bahan (ul) dan langkah (ol)
list Listicle 8-10 item dengan h2 + p
review Ulasan produk — Pros, Cons, Verdict
faq Tanya-jawab — min. 8 pertanyaan
tutorial How-to dengan langkah "Step N: title"
comparison Perbandingan aspek + Recommendation
news Artikel berita — lead paragraph + konteks + implikasi
roundup "Best of" affiliate — item bernomor + key features + top pick
guide Panduan komprehensif — multi-section, min. 500 kata

Variabel Template

Variabel Nilai
{{images_json}} JSON array gambar (URL + judul)
{{keyword}} Keyword yang sedang diproses
{{tone}} Gaya penulisan (acak dari ai.tones)
{{language}} Nilai dari config shuriken.language
{{country}} Nilai dari config shuriken.country

Urutan Prioritas Konfigurasi

CLI option > config file > nilai default hardcoded.

Contoh: --language=id di CLI akan override 'language' => 'en' di config/shuriken.php.