Skip to main content

npm

Shanoneのnpm連携は、npmレジストリ上のパッケージ、組織、チーム、トークン、セキュリティを管理する52個のツールをエージェントに提供します。

はじめに

1

npmアクセストークンを発行する

npm token createを実行するか、npmjs.comのAccess Tokens設定で、必要なパッケージ/組織にスコープされたGranular Access Tokenを作成します。
2

Shanoneにトークンを追加する

ShanoneダッシュボードのIntegrations > npmで、そのアクセストークンを貼り付けます。
3

リクエストを再実行する

保存が完了すると、npm_*ツールに対するshanone_execute_tool呼び出しが成功するようになります。

利用可能なツール

Shanoneはnpm向けに52個のツールを、以下のカテゴリに整理して提供しています。
npm_get_package, npm_get_package_version, npm_get_package_abbreviated, npm_search_packages, npm_search_packages_advanced, npm_get_dist_tags, npm_get_latest_version, npm_get_registry_info
npm_get_package_visibility, npm_set_package_access, npm_list_package_collaborators, npm_add_package_collaborator, npm_remove_package_collaborator, npm_add_dist_tag, npm_remove_dist_tag, npm_list_dist_tags_auth
npm_get_download_point, npm_get_download_point_all, npm_get_download_range, npm_get_download_range_all, npm_get_download_bulk, npm_get_download_versions
npm_list_org_members, npm_add_org_member, npm_remove_org_member, npm_list_org_teams, npm_list_org_packages, npm_get_org
npm_create_team, npm_delete_team, npm_list_team_members, npm_add_team_member, npm_remove_team_member, npm_list_team_packages, npm_grant_team_package_access, npm_revoke_team_package_access
npm_list_tokens, npm_create_token, npm_delete_token, npm_whoami, npm_validate_token
npm_get_user_profile, npm_update_user_profile, npm_deprecate_package, npm_undeprecate_package, npm_list_trusted_publishers, npm_add_trusted_publisher, npm_remove_trusted_publisher, npm_star_package
npm_audit_bulk, npm_get_advisory, npm_search_advisories

よくあるユースケース

依存関係のセキュリティレビュー

package.jsonの依存関係を一括で監査し、既知のアドバイザリを表示する

パッケージの整理

古いパッケージバージョンを非推奨にする前に、ダウンロード傾向を確認する

アクセス管理

新しいチームメンバーを追加し、適切なパッケージへのアクセス権を付与する

公開後のモニタリング

リリース後のダウンロード数を追跡して採用状況を把握する

トラブルシューティング

組織やチームの管理には、npm組織のオーナーまたは管理者に属するトークンが必要です——単一パッケージにスコープされたトークンではこれらの呼び出しは失敗します。
バルク監査はパッケージ名とバージョン範囲の完全一致でマッチングします。package.jsonのsemverレンジではなく、lockfileで解決済みのバージョンを渡すようにしてください。
スコープ付きパッケージを非公開(restricted)に設定するには、有料のnpm組織プランが必要です——無料アカウントではスコープ付きパッケージをpublicとしてのみ公開できます。