環境変数
環境変数はプロバイダー認証情報の設定やランタイム動作の切り替えに使用します — CI/CDやコンテナ環境で便利です。
Info
Cyberstrikeはモデル、エージェント、テーマなどの設定を環境変数からは読み取りません。それらは設定ファイルに記述します(設定リファレンスを参照)。以下の CYBERSTRIKE_* 変数は認証情報、設定パス、動作トグルに限定されます。
📸 SCREENSHOT: env-vars-terminal.png
ターミナルでの環境変数の設定
プロバイダーAPIキー
プロバイダーキーはSDKの標準的な変数名を使用します。完全なリストはAIプロバイダーを参照してください。
Anthropic
export ANTHROPIC_API_KEY="sk-ant-api03-..."OpenAI
export OPENAI_API_KEY="sk-proj-..."Google(Gemini)
export GOOGLE_GENERATIVE_AI_API_KEY="AI..."# GEMINI_API_KEY も受け付けますOpenRouter
export OPENROUTER_API_KEY="sk-or-..."Groq
export GROQ_API_KEY="gsk_..."Azure OpenAI
export AZURE_RESOURCE_NAME="your-resource"export AZURE_API_KEY="..."AWS Bedrock
export AWS_ACCESS_KEY_ID="AKIA..."export AWS_SECRET_ACCESS_KEY="..."export AWS_REGION="us-east-1"# またはBearerトークン:export AWS_BEARER_TOKEN_BEDROCK="..."設定パス変数
| 変数 | 説明 |
|---|---|
CYBERSTRIKE_CONFIG | カスタム設定ファイルへのフルパス |
CYBERSTRIKE_CONFIG_DIR | 追加の .cyberstrike ディレクトリをスキャン |
CYBERSTRIKE_CONFIG_CONTENT | インラインJSON設定(ファイルソースを上書き) |
CYBERSTRIKE_DISABLE_PROJECT_CONFIG | truthyに設定するとプロジェクト設定の読み込みをスキップ |
CYBERSTRIKE_PERMISSION | JSON文字列としてのパーミッションオーバーライド |
動作フラグ
これらの変数はランタイム動作を切り替えます。ブールフラグはtruthy値(1、true)に設定すると有効になります。
| 変数 | 説明 |
|---|---|
CYBERSTRIKE_AUTO_SHARE | 新しく作成したセッションを自動共有 |
CYBERSTRIKE_DISABLE_AUTOUPDATE | 自動更新を無効化 |
CYBERSTRIKE_DISABLE_AUTOCOMPACT | 自動コンテキストコンパクションを無効化 |
CYBERSTRIKE_DISABLE_PRUNE | 古いツール出力のプルーニングを無効化 |
CYBERSTRIKE_DISABLE_TERMINAL_TITLE | ターミナルタイトルを更新しない |
CYBERSTRIKE_DISABLE_DEFAULT_PLUGINS | 組み込みプラグインの読み込みをスキップ |
CYBERSTRIKE_DISABLE_LSP_DOWNLOAD | LSPサーバーをダウンロードしない |
CYBERSTRIKE_DISABLE_MODELS_FETCH | リモートモデルカタログを取得しない |
CYBERSTRIKE_DISABLE_EXTERNAL_SKILLS | 外部スキルの読み込みをスキップ |
CYBERSTRIKE_ENABLE_EXA | ExaベースのWeb検索を有効化 |
CYBERSTRIKE_MODELS_URL | モデルカタログURLを上書き |
CYBERSTRIKE_MODELS_PATH | ローカルパスからモデルカタログを読み込み |
サーバー認証情報
cyberstrike serve と cyberstrike web で使用します:
export CYBERSTRIKE_SERVER_PASSWORD="..." # サーバー起動に必須export CYBERSTRIKE_SERVER_USERNAME="admin" # 任意、デフォルトあり設定での変数参照
設定ファイルは2つの置換のみをサポートします:
環境変数 — {env:VAR}
{ "provider": { "anthropic": { "options": { "apiKey": "{env:ANTHROPIC_API_KEY}" } } }}{env:VAR} は VAR の値に置換されます。未設定の場合は空文字列になります。シェルスタイルの ${VAR}、$VAR、デフォルト値構文({env:VAR:-default})はサポートされていません。
ファイル内容 — {file:path}
{ "instructions": ["{file:./SECURITY.md}"]}パスは設定ファイルからの相対パス、絶対パス、または ~/ で始まるホームディレクトリからのパスが使用できます。
自動化向けパーミッションオーバーライド
cyberstrike run(非インタラクティブ)は、プロンプトが必要なツールコールを自動的に拒否します。CIでツールを事前承認するには、CYBERSTRIKE_PERMISSION でJSONパーミッションマップを渡してください:
export CYBERSTRIKE_PERMISSION='{"bash":"allow","edit":"allow","read":"allow"}'値は設定の permission フィールドと同じ形式です。パーミッションを参照してください。
シェル設定
Bash / Zsh
export ANTHROPIC_API_KEY="sk-ant-..."export CYBERSTRIKE_AUTO_SHARE=1Fish
set -gx ANTHROPIC_API_KEY "sk-ant-..."set -gx CYBERSTRIKE_AUTO_SHARE 1.envファイル
ANTHROPIC_API_KEY=sk-ant-...CYBERSTRIKE_PERMISSION={"bash":"allow"}# 起動前に読み込みsource .env && cyberstrikeCaution
.env ファイルをバージョン管理にコミットしないでください。.gitignore に .env を追加してください。
CI/CD連携
GitHub Actions
env: ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }} CYBERSTRIKE_PERMISSION: '{"bash":"allow","read":"allow","edit":"allow"}'
steps: - name: Security Scan run: cyberstrike run "scan for vulnerabilities"GitLab CI
variables: CYBERSTRIKE_PERMISSION: '{"bash":"allow","read":"allow"}'
security_scan: script: - cyberstrike run "analyze code for security issues"Docker
Docker Run
docker run -it \ -e ANTHROPIC_API_KEY="$ANTHROPIC_API_KEY" \ -e CYBERSTRIKE_PERMISSION='{"bash":"allow"}' \ cyberstrike/cyberstrikeDocker Compose
services: cyberstrike: image: cyberstrike/cyberstrike environment: - ANTHROPIC_API_KEY - CYBERSTRIKE_AUTO_SHARE=1 env_file: - .env優先順位
設定ソースはこの順でマージされます(最も高いものが勝ちます):
1. コマンドライン引数2. エンタープライズマネージド設定3. CYBERSTRIKE_CONFIG_CONTENT(インラインJSON)4. .cyberstrike/ ディレクトリ設定5. プロジェクト設定(cyberstrike.json / .jsonc)6. CYBERSTRIKE_CONFIG(カスタムファイル)7. グローバル設定(~/.config/cyberstrike/)8. リモート .well-known/cyberstrike9. デフォルト値詳細は設定リファレンスを参照してください。
変数の確認
# アクティブなCyberstrike変数を一覧表示env | grep CYBERSTRIKE
# プロバイダーキーが設定されているか確認(全体を表示せずに)echo "${ANTHROPIC_API_KEY:0:12}..."セキュリティ
- APIキー全体をechoしない
- CI/CDではシークレット管理を使用
- キーを定期的にローテーション
.envのパーミッションを制限:chmod 600 .env
Tip
本番環境ではHashiCorp Vault、AWS Secrets Manager、1Password CLIなどのシークレットマネージャーを使用してください。