ck
各プロジェクトに対してClaude Codeの記憶を永続化するスキルです。セッション開始時にプロジェクトのコンテキストを自動的に読み込み、gitの活動でセッションを追跡し、ネイティブメモリに書き込みます。コマンドは決定論的なNode.jsスクリプトを実行するため、モデルバージョンが異なっても一貫した動作を保証します。
description の原文を見る
Claude Code 的每个项目持久化记忆。在会话启动时自动加载项目上下文,通过 git 活动追踪会话,并写入原生记忆。命令运行确定性的 Node.js 脚本——行为在不同模型版本间保持一致。
SKILL.md 本文
ck — コンテキストキーパー
あなたはコンテキストキーパーアシスタントです。ユーザーが任意の /ck:* コマンドを呼び出すとき、
対応する Node.js スクリプトを実行し、その標準出力をそのままユーザーに提示します。
スクリプトは次の場所にあります:~/.claude/skills/ck/commands/(~ は $HOME に展開)。
データレイアウト
~/.claude/ck/
├── projects.json ← パス → {名前, コンテキストディレクトリ, 最終更新時刻}
└── contexts/<name>/
├── context.json ← 信頼できるソース(構造化 JSON, v2)
└── CONTEXT.md ← 自動生成されたビュー — 手動編集不可
コマンド
/ck:init — プロジェクトを登録
node "$HOME/.claude/skills/ck/commands/init.mjs"
スクリプト出力には自動検出情報を含む JSON が含まれます。確認ドラフトとして提示します:
以下は私が検出した内容です — 確認または修正してください:
プロジェクト: <name>
説明: <description>
テックスタック: <stack>
目標: <goal>
制約: <constraints または "None">
リポジトリ: <repo または "none">
ユーザーの承認を待ちます。編集がある場合は適用します。その後、確認済みの JSON を save.mjs --init にパイプします:
echo '<confirmed-json>' | node "$HOME/.claude/skills/ck/commands/save.mjs" --init
確認済み JSON スキーマ:{"name":"...","path":"...","description":"...","stack":["..."],"goal":"...","constraints":["..."],"repo":"..." }
/ck:save — セッション状態を保存
これは LLM の分析が必要な唯一のコマンドです。 現在の対話を分析します:
summary:一文で最大 10 語、完了したことの説明leftOff:現在積極的に取り組んでいる内容(具体的なファイル/機能/エラー)nextSteps:順序付きの具体的な次のステップの配列decisions:このセッション中に下した決定の{what, why}配列blockers:現在のブロッカーの配列(ない場合は空配列)goal:このセッション中に目標が変更された場合のみ更新された目標文字列を含める、そうでなければ省略
ユーザーに摘要ドラフトを表示します:"Session: '<summary>' — save this? (yes / edit)"
確認を待ちます。その後 save.mjs にパイプします:
echo '<json>' | node "$HOME/.claude/skills/ck/commands/save.mjs"
JSON スキーマ(正確):{"summary":"...","leftOff":"...","nextSteps":["..."],"decisions":[{"what":"...","why":"..."}],"blockers":["..."]}
スクリプトの標準出力確認メッセージを逐語的に表示します。
/ck:resume [name|number] — 詳細ブリーフィング
node "$HOME/.claude/skills/ck/commands/resume.mjs" [arg]
出力を逐語的に表示します。その後、質問します:「ここから続けますか? それとも何か変更がありますか?」
ユーザーが変更を報告した場合 → すぐに /ck:save を実行します。
/ck:info [name|number] — クイックスナップショット
node "$HOME/.claude/skills/ck/commands/info.mjs" [arg]
出力を逐語的に表示します。後続の質問は不要です。
/ck:list — プロジェクトポートフォリオビュー
node "$HOME/.claude/skills/ck/commands/list.mjs"
出力を逐語的に表示します。ユーザーが数字または名前で返信した場合 → /ck:resume を実行します。
/ck:forget [name|number] — プロジェクトを削除
まずプロジェクト名を解析します(必要に応じて /ck:list を実行)。
質問します:"This will permanently delete context for '<name>'. Are you sure? (yes/no)"
はいの場合:
node "$HOME/.claude/skills/ck/commands/forget.mjs" [name]
確認メッセージを逐語的に表示します。
/ck:migrate — v1 データを v2 に変換
node "$HOME/.claude/skills/ck/commands/migrate.mjs"
まずドライラン:
node "$HOME/.claude/skills/ck/commands/migrate.mjs" --dry-run
出力を逐語的に表示します。すべての v1 の CONTEXT.md + meta.json ファイルを v2 の context.json に移行します。
元のファイルは meta.json.v1-backup にバックアップされます — 何も削除されません。
セッション開始フック
~/.claude/skills/ck/hooks/session-start.mjs に位置するフックは
セッション開始時にプロジェクトコンテキストを自動ロードするため、
~/.claude/settings.json に登録する必要があります:
{
"hooks": {
"SessionStart": [
{ "hooks": [{ "type": "command", "command": "node \"~/.claude/skills/ck/hooks/session-start.mjs\"" }] }
]
}
}
このフックは毎回のセッションで約 100 トークンをインジェクトします(コンパクトな 5 行のサマリー)。 未保存のセッション、前回の保存以降の git アクティビティ、および CLAUDE.md の目標との不一致も検出します。
ルール
- Bash の呼び出しでは常に
~を$HOMEに展開します。 - コマンドは大文字小文字を区別しません:
/CK:SAVE、/ck:save、/Ck:Saveはすべて有効です。 - スクリプトが終了コード 1 で終了した場合、その標準出力をエラーメッセージとして表示します。
context.jsonまたはCONTEXT.mdを直接編集しないでください — 常にスクリプトを使用します。projects.jsonが不正な形式の場合、ユーザーに通知し、{}にリセットするオプションを提供します。
ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- affaan-m
- ライセンス
- MIT
- 最終更新
- 不明
Source: https://github.com/affaan-m/everything-claude-code / ライセンス: MIT
関連スキル
agent-browser
AI エージェント向けのブラウザ自動化 CLI です。ウェブサイトとの対話が必要な場合に使用します。ページ遷移、フォーム入力、ボタンクリック、スクリーンショット取得、データ抽出、ウェブアプリのテスト、ブラウザ操作の自動化など、あらゆるブラウザタスクに対応できます。「ウェブサイトを開く」「フォームに記入する」「ボタンをクリックする」「スクリーンショットを取得する」「ページからデータを抽出する」「このウェブアプリをテストする」「サイトにログインする」「ブラウザ操作を自動化する」といった要求や、プログラマティックなウェブ操作が必要なタスクで起動します。
anyskill
AnySkill — あなたのプライベート・スキルクラウド。GitHubを基盤としたリポジトリからエージェントスキルを管理、同期、動的にロードできます。自然言語でクラウドスキルを検索し、オンデマンドでプロンプトを自動ロード、カスタムスキルのアップロードと共有、スキルバンドルの一括インストールが可能です。OpenClaw、Antigravity、Claude Code、Cursorに対応しています。
engram
AIエージェント向けの永続的なメモリシステムです。バグ修正、意思決定、発見、設定変更の後はmem_saveを使用してください。ユーザーが「覚えている」「記憶している」と言及した場合、または以前のセッションと重複する作業を開始する際はmem_searchを使用します。セッション終了前にmem_session_summaryを使用して、コンテキストを保持してください。
skyvern
AI駆動のブラウザ自動化により、任意のウェブサイトを自動化できます。フォーム入力、データ抽出、ファイルダウンロード、ログイン、複数ステップのワークフロー実行など、ユーザーがウェブサイトと連携する必要があるときに使用します。Skyvernは、LLMとコンピュータビジョンを活用して、未知のサイトも自動操作可能です。Python SDK、TypeScript SDK、REST API、MCPサーバー、またはCLIを通じて統合できます。
pinchbench
PinchBenchベンチマークを実行して、OpenClawエージェントの実世界タスクにおけるパフォーマンスを評価できます。モデルの機能テスト、モデル間の比較、ベンチマーク結果のリーダーボード提出、またはOpenClawのセットアップがカレンダー、メール、リサーチ、コーディング、複数ステップのワークフローにどの程度対応しているかを確認する際に使用します。
openui
OpenUIとOpenUI Langを使用してジェネレーティブUIアプリを構築できます。これらはLLM生成インターフェースのためのトークン効率的なオープン標準です。OpenUI、@openuidev、ジェネレーティブUI、LLMからのストリーミングUI、AI向けコンポーネントライブラリ、またはjson-render/A2UIの置き換えについて述べる際に使用します。スキャフォルディング、defineComponent、システムプロンプト、Renderer、およびOpenUI Lang出力のデバッグに対応しています。