help.c.nf / パッケージ

パッケージレジストリ

p.c.nf は CNF のパッケージレジストリです。GitHub のような名前空間でバージョン管理されたパッケージを公開できます。各成果物には固定 URL、ダウンロード数、アクセス制御があります。

概要

p.c.nf は <username>/<project> 名前空間にパッケージを保存します。各プロジェクトには 1 つ以上のバージョンがあり、各バージョンには 1 つ以上のダウンロード可能な成果物を登録できます。

npm の @scope/package や GitHub の user/repo に似ていますが、ソースコードではなくバイナリ成果物を扱います。

URL 構造

p.c.nf/ カタログ — すべての公開パッケージを表示
p.c.nf/<user> ユーザープロフィール — そのユーザーのパッケージ一覧
p.c.nf/<user>/<pkg> プロジェクトページ — 最新バージョンと履歴
p.c.nf/<user>/<pkg>/<version> バージョンページ — 成果物と変更履歴
p.c.nf/<user>/<pkg>/download 最新の成果物をダウンロード
p.c.nf/<user>/<pkg>/<version>/download 特定バージョンをダウンロード(固定)
p.c.nf/<user>/<pkg>/<version>/<label> ラベル付き成果物をダウンロード(例: プラットフォーム別)

ダウンロード

curl または wget でパッケージをダウンロードできます:

# 最新バージョン curl -LO https://p.c.nf/c/cred-extension/download # 固定バージョン curl -LO https://p.c.nf/c/cred-extension/2.0.1/download

ダウンロードは再開用の HTTP Range リクエストと、304 Not Modified を返す条件付き GET リクエストに対応しています。

回数制限: IP アドレスごとに 1 分間 30 回です。上限を超えると 429 Retry-After ヘッダーが返されます。

公開

コンソールまたは HTTP API から新しいバージョンを公開します。どちらの方法でも、初回公開時にプロジェクトが作成されます。

API を使用

curl -X POST https://p.c.nf/api/publish \ -H "Authorization: Bearer cnf_..." \ -F "slug=my-tool" \ -F "version=1.0.0" \ -F "file=@dist/my-tool.zip" \ -F "description=Short one-line summary" \ -F "category=Client tools" 公開しました you/my-tool@1.0.0

必須フィールド:

  • slug — 小文字とハイフンのみ(最大 128 文字)
  • version — 自由形式の文字列。セマンティックバージョニングを推奨
  • file — アップロードする成果物

任意フィールド: descriptioncategoryiconvisibilitychangelog、複数の成果物があるバージョン用の label

コンソールを使用

console.c.nf にログインし、ダウンロード管理を開きます。コンソールでファイルのアップロード、メタデータ、バージョン更新を処理できます。

注: 公開には認証済みの CNF ユーザーが必要です。各ユーザーは自身の /<username>/ 名前空間に公開します。他のユーザー名では公開できません。

認証

2 種類の認証方式に対応しています:

API キー(自動処理に推奨)

console.c.nf/account/api でキーを生成し、Bearer トークンとして送信します:

Authorization: Bearer cnf_a1b2c3d4e5f6...

キーは生成時に 1 度だけ表示されます。有効なキーは最大 10 個まで作成でき、いつでも無効化できます。

セッションクッキー

console.c.nf または id.c.nf から閲覧すると、セッションクッキーで自動的に認証されます。ブラウザー拡張機能とコンソールで使用します。

公開範囲

public カタログに掲載され、誰でもダウンロードできます。
unlisted カタログには掲載されませんが、URL を知っている人は誰でもダウンロードできます。
private 所有者と管理者だけが表示またはダウンロードできます。

バージョン

公開された各バージョンは固定 URL で保持されます。新しいリリース後も古いバージョンを利用できるため、/1.0.0/download に固定した利用者には同じビルドが引き続き配信されます。

バージョンを含まない /download エンドポイントは常に最新版を配信します。

バージョン文字列は自由形式です。分かりやすさのためセマンティックバージョニング(MAJOR.MINOR.PATCH)を推奨しますが、強制はされません。

よくある質問

p.c.nf と d.c.nf の違いは何ですか?

p.c.nf はユーザーごとの名前空間(user/project)を持つ、バージョン管理されたパッケージレジストリです。d.c.nf は CNF 管理者が管理する厳選ダウンロードのフラットなカタログです。

バージョンを削除できますか?

はい、コンソールから削除できます。削除すると利用者が保存した固定 URL が機能しなくなるため、通常は新しいバージョンの公開を推奨します。

サイズ上限はありますか?

成果物の上限はユーザー権限レベルにより異なり、UPL 1 段階につき 50 MB、最大約 500 MB です。大きなファイルはコンソールから分割してアップロードできます。

拡張機能を認証するにはどうすればよいですか?

CNF Cred 拡張機能は、console.c.nf にログイン中のセッションクッキーと API キーに対応します。拡張機能の設定で方式を選択してください。