環境変数
skillshare が認識するすべての環境変数です。
設定
SKILLSHARE_CONFIG
Config ファイルのパスを上書きします。
SKILLSHARE_CONFIG=~/custom-config.yaml skillshare status
デフォルト: ~/.config/skillshare/config.yaml
XDG_CONFIG_HOME
XDG Base Directory Specification に従い、 ベースとなる設定ディレクトリを上書きします。
export XDG_CONFIG_HOME=~/my-config
# skillshare は ~/my-config/skillshare/ を使うようになる
デフォルトの挙動:
| プラットフォーム | デフォルト |
|---|---|
| Linux | ~/.config/skillshare/ |
| macOS | ~/.config/skillshare/ |
| Windows | %AppData%\skillshare\ |
優先順位: SKILLSHARE_CONFIG > XDG_CONFIG_HOME > プラットフォームのデフォルト。
初期セットアップの後で XDG_CONFIG_HOME を設定した場合、既存の ~/.config/skillshare/ ディレクトリを
手動で新しい場所に移動してください。
XDG_DATA_HOME
データディレクトリ(バックアップ、trash)を上書きします。
export XDG_DATA_HOME=~/my-data
# skillshare は ~/my-data/skillshare/backups/ と ~/my-data/skillshare/trash/ を使うようになる
デフォルト: ~/.local/share/skillshare/
XDG_STATE_HOME
状態ディレクトリ(操作ログ)を上書きします。
export XDG_STATE_HOME=~/my-state
# skillshare は ~/my-state/skillshare/logs/ を使うようになる
デフォルト: ~/.local/state/skillshare/
XDG_CACHE_HOME
キャッシュディレクトリ(バージョンチェックキャッシュ、UI dist キャッシュ)を上書きします。
export XDG_CACHE_HOME=~/my-cache
# skillshare は ~/my-cache/skillshare/ を使うようになる
デフォルト: ~/.cache/skillshare/
v0.13.0 以降、skillshare はバックアップ、trash、ログについて XDG Base Directory Specification に
従います。古いバージョンからアップグレードする場合、これらのディレクトリは初回実行時に
~/.config/skillshare/ から正しい XDG の場所へ自動的に移行されます。
SKILLSHARE_GITLAB_HOSTS
ネストされたサブグループに対応させるセルフマネージドの GitLab ホスト名のカンマ区切りリストです。 config ファイルがない場合がある CI/CD で便利です。
SKILLSHARE_GITLAB_HOSTS=git.company.com,code.internal.io skillshare install git.company.com/team/frontend/ui
環境変数と config ファイルの gitlab_hosts の
両方が設定されている場合、それらの値はマージされます(重複排除)。無効なエントリ(scheme、パス、
ポートを含む、または空のもの)は黙ってスキップされます。
デフォルト: なし(config ファイルの値のみが使われる)
SKILLSHARE_AZURE_HOSTS
セルフホストの Azure DevOps Server ホスト名のカンマ区切りリストです。
SKILLSHARE_AZURE_HOSTS=azuredevops.mycompany.com,tfs.internal.io
環境変数と config ファイルの azure_hosts の
両方が設定されている場合、それらの値はマージされます(重複排除)。環境変数内の無効なエントリは
黙ってスキップされます。
デフォルト: (なし)
SKILLSHARE_GITEA_HOSTS
セルフホストの Gitea ホスト名のカンマ区切りリストです。名前に gitea を含むホストはこれがなくても
検出されます。
SKILLSHARE_GITEA_HOSTS=git.company.com,code.internal.io
config ファイルの gitea_hosts とマージされます。
デフォルト: (なし)
SKILLSHARE_CNB_HOSTS
セルフホストの CNB ホスト名のカンマ区切りリストです。cnb.cool はこれがなくても検出されます。
SKILLSHARE_CNB_HOSTS=cnb.company.com
config ファイルの cnb_hosts とマージされます。
デフォルト: (なし)
Web UI
SKILLSHARE_UI_BASE_PATH
リバースプロキシの背後で Web ダッシュボードを配信するための URL サブパスを設定します。
SKILLSHARE_UI_BASE_PATH=/skillshare skillshare ui --host 0.0.0.0 --no-open
--base-path /skillshare と同等です。両方が設定されている場合はフラグが優先されます。
デフォルト: なし(ダッシュボードはルート / で配信される)
Nginx と Caddy の例については リバースプロキシ を 参照してください。
GitHub API
GITHUB_TOKEN
GitHub の personal access token です。
用途:
- GitHub API リクエスト(
skillshare search、skillshare upgrade、バージョンチェック) - Git clone 認証 — HTTPS 経由でプライベートリポジトリをインストールする際に自動的に注入される
トークンの作成方法:
- https://github.com/settings/tokens にアクセスする
- 新しいトークン(classic)を生成する
- スコープ: プライベートリポジトリには
repo、公開リポジトリにはなし - トークンをコピーする
公式ドキュメント: Managing your personal access tokens
使い方:
export GITHUB_TOKEN=ghp_your_token_here
skillshare install https://github.com/org/private-skills.git --track
Windows:
# 現在のセッション
$env:GITHUB_TOKEN = "ghp_your_token"
# 永続化
[Environment]::SetEnvironmentVariable("GITHUB_TOKEN", "ghp_your_token", "User")
GH_TOKEN
代替の GitHub トークン変数です。GitHub CLI (gh) が使用し、skillshare は
フォールバックとして認識します。
トークン解決の順序: GITHUB_TOKEN → GH_TOKEN → gh auth token
すでに gh を使っていて gh auth login で認証済みなら、skillshare は自動的にトークンを取得します —
追加の環境変数は不要です。
export GH_TOKEN=ghp_your_token_here
skillshare search "react patterns"
Git 認証
これらの変数は、プライベートリポジトリの HTTPS 認証を有効にします。設定されている場合、skillshare は
install と update の際にトークンを自動的に注入します — URL の変更は不要です。
詳細と CI/CD の例については プライベートリポジトリ を参照してください。
GITLAB_TOKEN
GitLab の personal access token または CI job token です。GitLab がホストするプライベートリポジトリの HTTPS clone に使われます。
トークンの作成方法:
- https://gitlab.com/-/user_settings/personal_access_tokens にアクセスする
- 新しいトークンを追加する
- スコープ:
read_repository(pull のみ)またはread_repository+write_repository(push と pull) - トークン(
glpat-プレフィックス)をコピーする
公式ドキュメント: Token overview
git 操作に使えるのは Personal Access Token(glpat-)と Project/Group Access Token のみです。
Feed Token(glft-)は git アクセスを持ちません。
export GITLAB_TOKEN=glpat-xxxxxxxxxxxxxxxxxxxx
skillshare install https://gitlab.com/org/skills.git --track
Windows:
$env:GITLAB_TOKEN = "glpat-xxxxxxxxxxxxxxxxxxxx"
BITBUCKET_TOKEN
Bitbucket のリポジトリアクセストークン、または app password です。Bitbucket がホストするプライベート リポジトリの HTTPS clone に使われます。
トークンの作成方法(リポジトリアクセストークン):
- Repository → Settings → Access tokens に移動する
- Read 権限(pull のみ)または Read + Write(push と pull)でトークンを作成する
- トークンをコピーする —
x-token-authを自動的に使用(ユーザー名は不要)
トークンの作成方法(app password):
- https://bitbucket.org/account/settings/app-passwords/ にアクセスする
- Repositories: Read(pull のみ)または Repositories: Read + Write(push と pull)で app password を作成する
BITBUCKET_USERNAMEも設定する(または URL にhttps://<username>@bitbucket.org/...として含める)
公式ドキュメント: Access tokens
export BITBUCKET_USERNAME=your_bitbucket_username
export BITBUCKET_TOKEN=your_app_password
skillshare install https://bitbucket.org/team/skills.git --track
Windows:
$env:BITBUCKET_USERNAME = "your_bitbucket_username"
$env:BITBUCKET_TOKEN = "your_app_password"
BITBUCKET_USERNAME
BITBUCKET_TOKEN が app password の場合に、それと一緒に使われる Bitbucket のユーザー名です。
export BITBUCKET_USERNAME=your_bitbucket_username
export BITBUCKET_TOKEN=your_app_password
skillshare install https://bitbucket.org/team/skills.git --track
AZURE_DEVOPS_TOKEN
Azure DevOps の Personal Access Token(PAT)です。Azure DevOps がホストするプライベートリポジトリの HTTPS clone に使われます。
トークンの作成方法:
https://dev.azure.com/{org}/_usersSettings/tokensに移動する- + New Token を選択する
- スコープ: Code → Read(pull のみ)または Code → Read & Write(push と pull)
- トークン(
AZDOシグネチャ付きの84文字の文字列)をコピーする
公式ドキュメント: Use Personal Access Tokens
export AZURE_DEVOPS_TOKEN=your_pat_here
skillshare install https://dev.azure.com/org/project/_git/repo --track
Windows:
$env:AZURE_DEVOPS_TOKEN = "your_pat_here"
GITEA_TOKEN
Gitea のアクセストークンです。gitea.com とセルフホストの Gitea 上のプライベートリポジトリの
HTTPS clone、およびフルクローンなしでサブディレクトリをインストールする際の Gitea Contents API に
使われます。
トークンの作成方法:
- Gitea で Settings → Applications に移動する
- 新しいトークンを生成する
- 権限:
repository: Read(pull のみ)またはrepository: Read and Write(push と pull)
export GITEA_TOKEN=your_token
skillshare install https://gitea.com/org/skills.git --track
Windows:
$env:GITEA_TOKEN = "your_token"
トークンはインストール元のホストにのみ送信されます。名前に gitea を含まないドメイン上のセルフ
ホストインスタンスには gitea_hosts が必要で、
それがなければ代わりに SKILLSHARE_GIT_TOKEN が使われます。
CNB_TOKEN
リポジトリへの読み取り権限を持つ CNB のアクセストークンです。cnb.cool と
セルフホストの CNB 上のプライベートリポジトリの HTTPS clone に使われます。
export CNB_TOKEN=your_token
skillshare install https://cnb.cool/org/skills --track
Windows:
$env:CNB_TOKEN = "your_token"
別のドメイン上のプライベートデプロイには cnb_hosts
が必要です。
SKILLSHARE_GIT_TOKEN
任意の HTTPS git ホスト用の汎用フォールバックトークンです。プラットフォーム固有のトークンが 設定されていない場合に使われます。
export SKILLSHARE_GIT_TOKEN=your_token
skillshare install https://git.example.com/org/skills.git --track
Windows:
$env:SKILLSHARE_GIT_TOKEN = "your_token"
トークンの優先順位: プラットフォーム固有(GITHUB_TOKEN、GITLAB_TOKEN、BITBUCKET_TOKEN、
AZURE_DEVOPS_TOKEN、GITEA_TOKEN、CNB_TOKEN) > SKILLSHARE_GIT_TOKEN。
Git SSL / TLS
これらの標準的な Git 環境変数は、すべての git 操作にそのまま渡されます。自己署名証明書や内部 CA を 使うセルフホストの Git サーバー(GitLab、Gitea など)に便利です。
GIT_SSL_CAINFO
カスタム CA 証明書バンドルへのパスです。セルフホストの Git サーバーが内部 CA によって署名された 証明書を使っている場合に使用します。
export GIT_SSL_CAINFO=/path/to/ca-bundle.crt
skillshare install https://gitlab.internal.company.com/team/skills.git --track
GIT_SSL_NO_VERIFY
SSL 証明書の検証を完全に無効化します。CA 証明書のセットアップが現実的でない場合の最終手段として 使用してください。
SSL 検証を無効化すると、中間者攻撃に対して脆弱になります。適切な CA バンドルを使った
GIT_SSL_CAINFO を優先するか、代わりに SSH を使ってください。
GIT_SSL_NO_VERIFY=true skillshare install https://gitlab.internal.company.com/team/skills.git --track
代替案: SSL を完全に回避するために SSH を使う:
skillshare install [email protected]:team/skills.git --track
テスト
SKILLSHARE_TEST_BINARY
統合テスト用の CLI バイナリパスを上書きします。
SKILLSHARE_TEST_BINARY=/path/to/skillshare go test ./tests/integration
デフォルト: プロジェクトルートの bin/skillshare
使用例
一時的な上書き
# 単一のコマンド
SKILLSHARE_CONFIG=/tmp/test-config.yaml skillshare status
# 複数のコマンド
export SKILLSHARE_CONFIG=/tmp/test-config.yaml
skillshare status
skillshare list
unset SKILLSHARE_CONFIG
永続的な設定(macOS/Linux)
~/.bashrc または ~/.zshrc に追加します。
export GITHUB_TOKEN="ghp_your_token_here"
永続的な設定(Windows)
[Environment]::SetEnvironmentVariable("GITHUB_TOKEN", "ghp_your_token", "User")
まとめ
| 変数 | 用途 | デフォルト |
|---|---|---|
SKILLSHARE_CONFIG | Config ファイルのパス | ~/.config/skillshare/config.yaml |
SKILLSHARE_UI_BASE_PATH | リバースプロキシ用の Web UI サブパス | なし |
SKILLSHARE_GITLAB_HOSTS | カスタム GitLab ホスト名(カンマ区切り) | なし |
SKILLSHARE_AZURE_HOSTS | カスタム Azure DevOps Server ホスト名(カンマ区切り) | なし |
SKILLSHARE_GITEA_HOSTS | カスタム Gitea ホスト名(カンマ区切り) | なし |
SKILLSHARE_CNB_HOSTS | カスタム CNB ホスト名(カンマ区切り) | なし |
XDG_CONFIG_HOME | ベースとなる config ディレクトリ | ~/.config(Linux/macOS)、%AppData%(Windows) |
XDG_DATA_HOME | データディレクトリ(バックアップ、trash) | ~/.local/share |
XDG_STATE_HOME | 状態ディレクトリ(ログ) | ~/.local/state |
XDG_CACHE_HOME | キャッシュディレクトリ(バージョンチェック、UI) | ~/.cache |
GITHUB_TOKEN | GitHub API + git clone 認証 | なし |
GH_TOKEN | GitHub API(GITHUB_TOKEN のフォールバック) | なし |
GITLAB_TOKEN | GitLab git clone 認証 | なし |
BITBUCKET_TOKEN | Bitbucket git clone 認証 | なし |
BITBUCKET_USERNAME | app password 認証用の Bitbucket ユーザー名 | なし |
AZURE_DEVOPS_TOKEN | Azure DevOps git clone 認証 | なし |
GITEA_TOKEN | Gitea git clone + Contents API 認証 | なし |
CNB_TOKEN | CNB git clone + contents API 認証 | なし |
SKILLSHARE_GIT_TOKEN | 汎用 git clone 認証(フォールバック) | なし |
GIT_SSL_CAINFO | カスタム CA 証明書バンドルのパス | システムデフォルト |
GIT_SSL_NO_VERIFY | SSL 証明書の検証を無効化する | false |
SKILLSHARE_TEST_BINARY | テストバイナリのパス | bin/skillshare |
関連項目
- Configuration — Config ファイルリファレンス
- Windows の問題 — Windows 環境のセットアップ