mcpField
C
calligraphy-composition

calligraphy-composition

github.com/mnhkahnクリエイティブ・メディア012 回インストール2 日前に更新
リポジトリ

calligraphy-composition について

calligraphy-composition は、テキストや個別の漢字から行書の字形を取得するスキルです。字形の表示や構成要素の確認に使え、欠けている字形は合成できます。字帖にある原字を優先します。

主な機能

  1. 01テキストから行書字形を取得
  2. 02原字の候補を検索
  3. 03部首と構成要素を確認
  4. 04欠けた字形を合成
  5. 05字形の出典と画像 URL を提示

活用シーン

  1. 01文章の行書字形を収集
  2. 02漢字の字帖原字を検索
  3. 03漢字の部首と構成を確認
  4. 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. 1文字の場合は、cyeam mo char detail <char> を実行し、候補があれば原字形を使用します。
  2. 文章の場合は、cyeam mo guwen <text> を実行します。デフォルトでは、ライブラリにある原字形のみが返され、不足している字形は空になります。
  3. 合成は、原字形の候補がない場合、文章に不足している字形が含まれる場合、またはユーザーが構成要素による合成を明示的に求めた場合にのみ使用します。テキストには guwen --ai-compose を、1文字には char compose を使用します。

char compose は、完全な原字形がある場合でも、常に構成要素による合成を強制します。たとえば、まず char detail "无" を検索し、構成要素による合成が適切な場合にのみ char compose "无" を使用してください。

画像の提示

ユーザーが字形または書道画像を見たい場合は、選択した候補の image URL を Markdown 画像として埋め込み、その source も含めてください。URLだけを返さないでください。

「无」 — 王羲之《临锺繇千字文》

![无](https://res.cloudinary.com/.../word.webp)

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

コメント