calligraphy-composition について
calligraphy-composition は、テキストや個別の漢字から行書の字形を取得するスキルです。字形の表示や構成要素の確認に使え、欠けている字形は合成できます。字帖にある原字を優先します。
主な機能
- 01テキストから行書字形を取得
- 02原字の候補を検索
- 03部首と構成要素を確認
- 04欠けた字形を合成
- 05字形の出典と画像 URL を提示
活用シーン
- 01文章の行書字形を収集
- 02漢字の字帖原字を検索
- 03漢字の部首と構成を確認
- 04欠けた字形の画像を生成
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ mnhkahn/ cyeam-cli --skill calligraphy-compositionインストール後、Claude Code で/calligraphy-compositionを入力して読み込まれたか確認します。
同梱ファイルagents/openai.yaml
詳細
行書の字形構成
テキストまたは個々の漢字の行書字形を取得し、部首や構成要素を調べ、必要に応じて不足している字形を合成します。篆書画像の認識には、別の seal-script-ocr スキルを使用してください。
コマンド
cyeam mo guwen "兰亭序" # Retrieve glyphs for text
cyeam mo guwen "兰亭序" --ai-compose # Synthesize missing glyphs only
cyeam mo char detail "之" # Original glyph candidates and sources
cyeam mo char composition "曦" # Radicals and components
cyeam mo char compose "曦" --out char.png # Force component-based synthesis
字形の選択ルール
文字を書く、返す、または表示するよう求められた場合は、まず原字形を検索してください。デフォルトで char compose を使用しないでください。
- 1文字の場合は、
cyeam mo char detail <char>を実行し、候補があれば原字形を使用します。 - 文章の場合は、
cyeam mo guwen <text>を実行します。デフォルトでは、ライブラリにある原字形のみが返され、不足している字形は空になります。 - 合成は、原字形の候補がない場合、文章に不足している字形が含まれる場合、またはユーザーが構成要素による合成を明示的に求めた場合にのみ使用します。テキストには
guwen --ai-composeを、1文字にはchar composeを使用します。
char compose は、完全な原字形がある場合でも、常に構成要素による合成を強制します。たとえば、まず char detail "无" を検索し、構成要素による合成が適切な場合にのみ char compose "无" を使用してください。
画像の提示
ユーザーが字形または書道画像を見たい場合は、選択した候補の image URL を Markdown 画像として埋め込み、その source も含めてください。URLだけを返さないでください。
「无」 — 王羲之《临锺繇千字文》

char detail の URL は原帖画像を指しており、そのまま埋め込めます。表示可能な画像を得るためだけに char compose に切り替えないでください。クライアントが Markdown 画像を表示できない場合に限り、代替として画像リンクを使用してください。
出力と対象範囲
guwen、char detail、char compositionは JSON を標準出力に書き込みます。char detailの候補には、原字形の画像とその出典が含まれます。char composeは、必須の--outパスに PNG を書き込みます。常に構成要素を合成し、原帖の字形を表すものではありません。- このワークフローの対象は行書であり、楷書や隷書ではありません。
--ai-composeは不足している字形のみを補います。既存の原字形は保持してください。- ログインは不要です。
インストール
インストール前にコマンドを確認してください。これらの例では latest ではなく v1.1.4 を固定しており、実行可能なアーカイブをダウンロードします。 CLI が必要な場合にのみインストールしてください。コマンドを実行するたびに再インストールする必要はありません。
macOS / Linux:確認してユーザーディレクトリにインストール
curl、tar、install、および shasum または sha256sum を使用して Bash または Zsh で実行してください。
スクリプトは arm64 または x86_64 の macOS / Linux を選択し、それ以外のプラットフォームでは停止します。
(
set -eu
version='v1.1.4'
case "$(uname -s)/$(uname -m)" in
Darwin/arm64)
asset='cyeam_Darwin_arm64.tar.gz'
sha256='06b5af004ab4f0f05d5829ea6bd18b97c4449c262af7df14c67175f7d3cb29db' ;;
Darwin/x86_64)
asset='cyeam_Darwin_x86_64.tar.gz'
sha256='107342bb9d2fa444b96155c468e71b8cc63e0f5ad0acc784698afe221548efa6' ;;
Linux/aarch64|Linux/arm64)
asset='cyeam_Linux_arm64.tar.gz'
sha256='ed87697f3948bead67b585e9881c3bef20e8d2d903beb5b125587281a5091c5b' ;;
Linux/x86_64)
asset='cyeam_Linux_x86_64.tar.gz'
sha256='873d6805fab8ab56540bb034aaf2f57f12eb672fcabd322ebe401e8250a5966d' ;;
*) echo 'Unsupported platform; see the pinned release.' >&2; exit 1 ;;
esac
workdir=$(mktemp -d)
trap 'rm -rf "$workdir"' EXIT
cd "$workdir"
curl --fail --show-error --silent --location --proto '=https' --proto-redir '=https' \
--output "$asset" "https://github.com/mnhkahn/cyeam-cli/releases/download/$version/$asset"
printf '%s %s\n' "$sha256" "$asset" > expected.sha256
if command -v sha256sum >/dev/null 2>&1; then
sha256sum -c expected.sha256
else
shasum -a 256 -c expected.sha256
fi
# set -e prevents extraction or installation if download or verification fails.
tar -xzf "$asset" cyeam
mkdir -p "$HOME/.local/bin"
install -m 0755 cyeam "$HOME/.local/bin/cyeam"
CYEAM_CLI_NO_UPDATE_NOTIFIER=1 "$HOME/.local/bin/cyeam" --no-analytics version
)
一時ディレクトリと ~/.local/bin/cyeam(既存のバイナリがあれば置き換えます)にのみ書き込みます。
管理者権限は不要です。システムディレクトリ、サービス、シェル設定は変更されません。現在のシェルで使用するには、次を実行してください。
export PATH="$HOME/.local/bin:$PATH"
継続して使用するには、この行をシェル設定に追加してください。 チェックサムについては、v1.1.4 のリリースページと checksums.txt を確認してください。固定バージョンを変更する場合は、バージョンと SHA-256 値の両方を確認して置き換えてください。 チェックサムはリリースファイルの整合性を確認するものであり、独立した署名やセキュリティ監査ではありません。
外部リクエストとローカルの状態
- インストール: 固定された GitHub リリースから選択したアーカイブをダウンロードします。GitHub のアセット CDN にリダイレクトされる場合があります。固定された SHA-256 を検証してから、
cyeamのみを展開します。インストール検証では、アナリティクスと更新チェックを無効にします。 - カリグラフィーのクエリ:
mo guwenとmo char detail/composition/composeは、選択したテキスト、フォント、合成オプションをhttps://www.cyeam.com/mo/api/*に送信します。合成された画像は--outに書き込まれます。既存のファイルが上書きされる場合があります。元の画像は Cloudinary または別の画像 CDN から取得される場合があります。画像を表示すると、その URL へのリクエストが発生します。 - アナリティクス: デフォルトでは、コマンド名、CLI のバージョン、システム情報、ランダムなインストール ID を
https://us.i.posthog.comに送信します。サーバーは送信元 IP から位置情報を推測する場合があります。コマンド引数、画像の内容、認証情報は含まれません。ID は~/.cyeam/analytics-idに保存されます。無効にするには、--no-analyticsまたはCYEAM_CLI_NO_ANALYTICS=1を指定します。 - 更新通知: GitHub で最新リリースを最大 24 時間に 1 回確認し、状態を
~/.cyeam/update-state.jsonにキャッシュします。通知によって実行ファイルが置き換えられることはありません。無効にするには、CYEAM_CLI_NO_UPDATE_NOTIFIER=1を設定します。明示的なcyeam updateコマンドは最新リリースをダウンロードして検証し、実行ファイルを置き換えた後、npx skills addを使ってスキルの同期を試みます。固定バージョンを使い続けるには、上記のインストール手順を使用してください。
現在のシェルで、このスキルに必要なネットワークリクエストのみを許可するには、次のようにします。
export CYEAM_CLI_NO_ANALYTICS=1
export CYEAM_CLI_NO_UPDATE_NOTIFIER=1