본문으로 건너뛰기
cccskills
무료GitHub에 공개

remember

【必須】ユーザーに記憶を頼まれたとき、保存先を判定してから書く。「覚えて」「保存して」「これ残して」「忘れないで」「メモって」など表現は問わない。ユーザーにClaudeの言動を誤りとして直されたとき、前にも同じことを言われた気がするときも発動。

このスキルを経由せずにauto-memory・CLAUDE.md・habits・tag-notes・rules・pinに書かない。

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

isizono/calm스타 4(GitHub 4 + cccskills 0)

실행 점수 미검증

설치 방법 보기

포함된 파일(2)

  • SKILL.md21.3 KB
  • references/precedent-format.md9.4 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

remember

【必須】ユーザーが記憶を依頼した。以下のフローで保存先を判定し、確認の規定(下表)に従って実行する。新規保存専用のスキルであり、保存済みの記録そのものの訂正・撤回は forget skillの担当。

この判定木は rule-placement skillの4軸評価(契機/型/リスク/改訂見込み)から導出された高速表である。日常の「覚えて」はこの判定木で足りる。判定木の末端で迷う場合、1つの依頼に性質の異なる複数ルールが混ざっている場合は、rule-placementのfull評価へ切り替える。本判定木を改訂するときは、rule-placement側の評価体系から導出できる形を保つこと(片側だけの改訂は禁止。導出関係が崩れていたら矛盾として扱う)。

発動契機

以下のいずれかで発動する。

  • ユーザーが何かを覚えておくこと・保存すること・記憶に残すことを依頼した(「覚えて」「保存して」「これ残して」「忘れないで」「メモって」「記録して」など。表現のバリエーションは問わない)
  • ユーザーの発言に既視感がある(下の「既視感による自律発動」。雑談レベルの繰り返しは対象外)
  • ユーザーがこのセッションでのClaudeの行動・判断・出力を誤りとして直した(同じ指摘の繰り返し、「〜しないで」等。表現は問わない。人間の発話に限る)。まず直してから、本フローで教訓の置き場(フィードバックエントリを含む)を判定する

以下では発動しない(decision-record・forgetとの線引きは「## 注意」を参照)。

  • 経緯・成果物の記録(recording skillの担当)
  • メタask裁定の発効に伴う配置(rule-placement skillの担当)

確認の規定

書き先扱い
rules・habits・CLAUDE.md・判例decision・新しいdecision候補ごとに承認を得てから書く
フィードバックのエントリとノート・auto-memory・tag-notes・pin書いたあと1行で報告する

既視感による自律発動

ユーザーが明示的に記憶を依頼していなくても、発言に既視感を感じたら(雑談レベルの繰り返しは対象外)、判定フローの前処理3「既存を必ず引く」から始める(CALM searchだけで判定しない。get_feedback_entries、文脈内のauto-memory/habits/rulesの本文、触れたタグならtag-notesも見る)。

  • どこにも見つからない → 勘違いとして扱い、以降の判定フローには進まず通常の応答に戻る
  • 見つかったのが経緯(decision/log等)だけで、置き場所(フィードバックエントリ・auto-memory・habits・rules・tag-notes)には記録が無い → 新規保存として判定フローへ進む
  • 置き場所に記録がある → 再発の手順(下)に進む

型の前判定(あらかじめ答えを出しておく1問)

そのルールは「〜な状態なら〜してよい/すべき」という条件付き判断基準か? (適用条件と適用外を書き分けられ、隣接文脈に誤適用したら害がある型。例外条項付きの禁止はこれではなく無条件規範)

  • YES → 全文の正は判例decision(add_decisionsで記録。reasonに適用条件:/適用外:の定型節を含める。書式は本スキル同梱の references/precedent-format.md。承認を得てから書く)と決まる。続けて下の判定フローで契機を判定し、契機の置き場が決まった場合はそこへ要旨と判例への参照を書く(両方配置。実行時は判例decision作成→参照配置の順。参照側の承認/報告は、置き場ごとの確認の規定に従う)
  • NO → そのまま判定フローへ

判定フロー

前処理として次を行う。

  1. 人間の発話による訂正・依頼か? 他セッションの中継だけなら発動しない
  2. 訂正なら先に直す。指示なら指示に従う(作業を先に済ませる)
  3. 既存を必ず引く
    • get_feedback_entries(数十件未満なら引数なしで全件)
    • CALM search(対象はdecision/log/material/topic/activityのみ)
    • auto-memoryは文脈内の索引、habits/rulesは注入済みの本文、tag-notesは触れたタグなら注入済み。searchでは出てこないので、文脈を見る
そのルール/情報は…

├─ 訂正でも依頼でもない(置くべきルール・情報が無い)/一回きりの指示・訂正で、
│   同じ型の再来が想定できない?
│   └─ YES → 記録しない(報告もしない)
│
├─ 引いた既存の記録が古い・誤っていて、消すか書き換える必要がある?
│   └─ YES → forget(新しい規範が要るなら、forgetの後にこの木へ戻る)
│
├─ 引いた既存の記録が今も正しく、それを踏んだ(再発)?
│   └─ YES → 再発の手順(下)
│
├─ 【型の前判定】条件付き判断基準か?
│   └─ YES → 全文の正本は判例decision(候補を出し、承認を得てから書く)。
│       続けて下の枝で契機の置き場を決め、そこに要旨と判例への参照を書く
│       (両方配置)
│
├─ 特定のactivity/topicに取り組んでいる間だけ必要?(終われば不要)
│   └─ YES → pin(内容をdecision/materialとして記録し、add_pinで対象へ
│       括り付ける。条件付き判断基準なら前判定で決めた判例decisionを
│       そのままpinで指す。指す先がmaterialか既存のdecisionなら書いたあと
│       報告、新しいdecisionが要るなら承認。pin元へのcheck_inのたびに本文
│       ごと再配達される。ただしpinned合計が全体予算の枠を超えると、小さい
│       ものから優先して残り本文は先頭を残して切られ、続きへのポインタが
│       付く縮退が起きる)
│
├─ 必要になる瞬間を字面で照合できる?
│   ├─ 人間の発話の字面 → エントリ(write_feedback_entry、strength=notify・
│   │    timing=utterance。書いたあと報告)
│   │    ※人間の発話に限る。SAの報告の中継・他セッションからのメッセージ・
│   │      バックグラウンドタスク通知・システム通知のターンは、hook側
│   │      (feedback_hook.py)が配達前に判定して止めるため、エントリ側に
│   │      除外条件を書く必要はない。SAの報告や他セッションのメッセージを
│   │      きっかけにする教訓は、この判定で届かないので下の枝へ
│   ├─ 踏む直前に自分が言いがちな言い回し → エントリ(strength=notify・
│   │    timing=output、conditionのfieldは'text'。書いたあと報告)
│   │    ※次の区切り(次のUserPromptSubmit)で届く。止めはしない。人間の
│   │      発話でないターン(bg・orchへの通知)にも届く
│   │    ※bodyは50字以内の一言。長い説明はrefに置く(拒否される)
│   ├─ ツール失敗のエラー文 → エントリ(strength=notify・timing=tool_fail。
│   │    書いたあと報告)
│   │    ※CALM自身のMCPツールはエラーを例外でなく戻り値で返すため、
│   │      PostToolUseFailureとして届かない(CALMツールの失敗を踏み跡に
│   │      したいならこの枝は使えない)
│   │    ※PreToolUse hookにdenyされた呼び出しは、ツール呼び出し自体が
│   │      実行されないためPostToolUseFailureが発火しない(公式hook
│   │      lifecycleの記述と、denyが多数発生した状況でも配達が一度も
│   │      発生していない実機観察の両方で確認済み)
│   │    ※サブエージェント発(agent_type付き)の呼び出しにはhook側
│   │      (feedback_hook.py)が配達前に判定して止める
│   └─ 実行直前の引数でしか照合できない → blockのエントリ
│        (strength=block・timing=pre_tool。書いたあと報告)
│        ・実行直前にはblock(1回止め)しか無い。「知らせるだけ」は作れない
│        ・1回止める価値があるときだけ使う(見逃すと不可逆、または同じ罠を
│          繰り返し踏む)。それ以外はエントリにせず、下の枝へ
│        ・tool名だけでallが空のblockは作らない(そのツールを毎回止めて
│          しまう)
│   ※エラーの前(設計時・着手時)に知っておくべきことなら、エントリは補助
│     にとどめ、下の枝を主にする
│
├─ 特定のファイルに触れる時だけ必要?
│   └─ YES → ~/.claude/rules/(パス付き。承認)
│       (条件付き判断基準なら、rulesには要旨+判例への参照を書く。
│         `cc-memory-habits.md`はhabits DBからの自動投影ファイルで手動編集
│         対象外。対象はそれ以外の手動管理rulesファイル)
│
├─ 特定のタグ文脈でだけ必要?
│   └─ YES → tag-notes(update_tagで記録。書いたあと報告。条件付き判断基準
│       なら、tag-notesには要旨+判例への参照を書く。型が手順・事実参照
│       (仕様スナップショット・運用手順・歴史記録)なら全文を書かず
│       1行ポインタに留め、正典はコード/docs/資材に置く(rule-placement
│       Step3のタグ文脈行参照)。追記後の見込み文字数が天井(4,000字)を
│       超えるなら(現在天井未満でも増加更新は超過時に拒否されるため)、
│       先に`demote_tag_notes`で縮めてから書き込む)
│
├─ どのプロジェクト・文脈でも常に適用される?
│   ├─ 条件付き判断基準(前判定YES)?
│   │   └─ 判例decisionのみで完結(承認。追加の置き場は作らない。契機を
│   │       名指しできない条件付きは実質「自覚的な迷い」が契機であり、
│   │       迷った瞬間のsearch/add_ask同梱のpullで届く判例が正しい置き場)
│   ├─ 「従え」系の無条件規範?(条件節なしの1文で書ける)
│   │   ├─ 毎回必ず守るべき(違反の実害が大きい)
│   │   │   ├─ 100字未満で書ける → habits(承認。add_habit後、
│   │   │   │    update_habitでtrigger_mode="always"へ昇格)
│   │   │   └─ 収まらない → ~/.claude/rules/(承認。横断ルール)
│   │   └─ 弱い行儀・好み → habits(承認。intelligently層のまま)
│   │       (intelligently層は実際には引かれにくい実測がある。
│   │         本当に守らせたいものをここに置かない)
│   └─ 「知っとけ」系の文脈・tips?
│       ├─ 重要度高い → ~/.claude/CLAUDE.md(承認)
│       └─ 重要度低い → auto-memory(書いたあと報告)
│           (同じ趣旨の記録が再発したら、再発の手順(下)に従う)
│
└─ 次のいずれかに該当 → [rule-placement](../rule-placement/SKILL.md) のfull評価へ
    ・どれにも当てはまらない / 複数に該当して迷う
    ・1つの依頼に性質の異なる複数ルールが混ざっている
    ・契機が「あるツールを呼ぶ瞬間」「ある定型手順(skill)の実行」にしか
      名指しできない(配置先がPR経路になり、fast pathの守備範囲外)

エントリを新しく書く手順

  1. bodyだけで意味が通るように、100字以内で書く。refは配達されない
    • 長い手順は資材・skill・ファイルに置き、bodyに参照先を書く(例:「手順は資材〈名前〉をget_materialで読む」)
  2. refには「踏み跡: 〜」と経緯を書く。手入れのときに読むためのメモである
  3. 書いたら、名前と何をしたかを1行で報告する
  4. エントリの変更・削除はforgetを通さない

再発の手順(軽い出口)

まず、そのエントリが「届いた」かどうかを決める。

  • 「届いた」とみなすのは、そのエントリの配達文が、今の自分の文脈に見えているときだけである。配達文は次のどれかの形をとる。
    • 「過去の躓きから学んだ注意点」
    • 「直前のツール失敗に関連する過去の躓き」
    • 「直前の自分の発言に関連する過去の躓き」
    • ブロックの理由文
  • 見えていなければ「出なかった」とする。圧縮のあとや別のセッションでは、見えないので「出なかった」になる
  • 訂正の語彙そのものを条件にしたエントリは、踏んだあとにしか届かない。このため「届いた/出なかった」の欄は空でよい

既存の記録の種類ごとに、次のことをする。複数の種類に同じ記録があるとき(例: フィードバックエントリとrulesの両方に同じ教訓がある)は、フィードバックエントリの行を必ず実行してstumbleを書き、他の行はそのうえで追加として行う。

既存の記録すること
フィードバックエントリadd_feedback_note(kind="stumble")を書き、「届いた/出なかった」と「人に直されたか」を記す。<br>出なかった: get_feedback_entries(name=)でread_markを取り、write_feedback_entry(action="update")で条件を広げる。広げれば次は届く見込みならここまでにする。広げても字面で拾えない型なら、次の「届いたのに」と同じく格上げを検討する。<br>届いたのに踏んで人に直された: stumbleを1件書いた時点(再発1回)で、block化・rules/habits格上げ(要承認)・条件修正のいずれかを検討し、結果をnoteに残す。件数が溜まるのを待たない。
auto-memory / tag-notes字面で照合できる: エントリを新しく作る(書いたあと報告)。bodyはその記録の要旨とし、「詳細は〈記録名〉」と書く。<br>照合できない: まず「それを踏む直前に、自分が言いがちな言い回しはあるか」を考える。あれば、その言い回しを条件にしたoutputのエントリを新しく作る(書いたあと報告。上の「字面で照合できる」と同じ作り方で、bodyは50字以内)。言い回しが思い当たらないときだけ、その記録に日付つきで再発の1行を追記する。書式は- 再発 YYYY-MM-DD: <何が起きたか1行>(書いたあと報告)。<br>再発の行を1行追記した時点(再発1回=2回目に踏んだ時点)で、rule-placementのfull評価で格上げ先を決める。結論がrules・habits・CLAUDE.md・判例decision・新しいdecisionなら、下の「格上げの承認の取り方」に従う。tag-notes・pin・エントリなら書いたあと報告する。
rules / habits / CLAUDE.md字面で照合できる: blockかnotifyのエントリで強制力を足す(書いたあと報告)。bodyは人間の規則への参照だけにし、規則の中身を言い換えない。<br>照合できない: auto-memoryに「〈規則名〉の再発」の記録を作るか追記して、上の行と同じく再発の行を1行書いた時点でfull評価に進む。<br>すでに常時push(always/rules)に置かれていて上げる先が無いときは、書き直しの候補を出し、下の「格上げの承認の取り方」に従う。

照合できない再発は、この1本の道だけで扱う。full評価に進むのは、再発の行を追記して格上げを検討するときだけである。

格上げの承認の取り方

格上げ先が承認の要る置き場(rules・habits・CLAUDE.md・判例decision・新しいdecision)になったときは、次の2通りのどちらかで承認を取る。

  • 生きたセッションでユーザーがいる: その場で候補を出して聞く
  • 人がいない場面(sync-memoryなど、セッションを閉じる直前の一括処理): add_askでメタask(kind="meta"、blocks不要)を起票する。questionは「教訓〈名前〉を〈候補の置き場〉へ格上げしてよいか」とし、contextには教訓の要旨・踏んだ経緯・候補の置き場とその理由を入れる。起票までが仕事で、承認なしに書かない

格上げ則(判定フローに優先する例外)

「見逃すと不可逆な事故になる(外部へのpush・データ消失・他セッション巻き込み)」かつ「踏む直前に迷いが発生しない(良かれと思って・ついでに踏む)」ルールは、pull系(判例decision・habits intelligently層・auto-memory)に置いてはいけない。契機を名指しできるならその契機のpush経路(tag-notes/pin)、できないなら常時push(habits always昇格 or ~/.claude/rules/)へ格上げする。pull経路は実際には引かれないことがある。

  • 実行直前の引数で照合できるなら、blockのエントリを格上げ先の最上位にする
  • 既存のエントリがあっても、それが不可逆で、しかも気づかずに踏む種類なら、blockのエントリを新しく作ることを同時に検討する

格上げ先の経路の判断に迷う場合は、fast pathで即決せずrule-placementのfull評価(Step 4の強度補正)で確定する。

判定の3軸(fast path版)

  • 契機: 何が起きたらこのルールが要るのか。作業単位 → ファイル → タグの順(狭い契機から)に名指しを試し、名指しできないものだけを「常時」に落とす。複数の契機に該当したら、より狭い契機を採る。「重要だから常時」は契機の名指しの失敗(重要度はリスク軸で扱う)
  • 型: 無条件規範(従え系)/ 条件付き判断基準(〜ならOK系)/ 事実・tips(知っとけ系)
  • リスク: 見逃しコスト × 無自覚性。上記の格上げ則を参照

habits投影の仕組み

add_habitで記録したhabitは常にtrigger_mode='intelligently'(マニフェスト表示)で作成される。SessionStart時に~/.claude/rules/へ自動投影されるが、intelligently層はタイトルのみで、全文はget_habitsでのon-demand取得が必要になる。

「毎回必ず全文で見てほしい」レベルの制約は、記録後にupdate_habitでtrigger_mode="always"へ昇格する追加ステップが要る(新規作成と同時にalways指定はできない)。判定に迷う場合はユーザーに確認する。

注入の強度

強 ┃ habits(always層)        — 全文をSessionStartで常時投影。絶対守れ
   ┃ rules/                    — セッション起動時に全文注入。従え
   ┃ pin                       — pin元へのcheck_inのたび本文ごと再配達
   ┃                             (pinned合計が予算超過時は小さい順に優先、
   ┃                             溢れた分は先頭を残して切られポインタが付く)
   ┃ フィードバックエントリ    — 字面が一致した瞬間に配達、blockは実行を止める
   ┃ tag-notes                 — タグ文脈に触れた初回に全文注入
   ┃ CLAUDE.md                 — プロジェクト文脈として参照
   ┃ 判例decision              — search/pull_precedents/add_ask時にpullで届く
   ┃ auto-memory               — 見えてはいるけど、気づけば使え程度
   ┃ habits(intelligently層) — タイトルのみ常時投影、全文はget_habitsで取得
弱 ┃

注意

  • 判定に迷ったらrule-placementのfull評価へ。それでも決めきれない場合はユーザーに確認する
  • 「決めたことの事実記録」としてのdecision(decision-record skillの担当)は「覚えて」の対象外。ただし条件付き判断基準の配置先としての判例decisionは本フローの正規の出口であり、対象外ではない。記録時はdecision-recordの書式作法(定型節)に従う
  • auto-memoryとCALMの二重記録はOK(異なる注入経路として機能する)
  • 保存済みの記録そのものが古い・誤りで消す・書き換える必要がある場合は対象外。気づいたらforget skillへ

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

【必須】現在のアクティビティを完了にする、または完了にせず中断して寝かせる。「/af」「この作業完了」「クローズして」「一旦ここまで」「今日はここで止める」「いったん置いておく」など終える・中断する意図で発動。このスキルを経由せずにupdate_activityでcompleted・pending・snoozed・shelvedにしない。

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

isizono/calm42026년 10월 16일 업데이트

【必須】新しいアクティビティを作成してcheck-inする。「/as」「新しい作業始める」「アクティビティ作って」「これやる」など新規作業の開始で発動。このスキルを経由せずにadd_activityを呼ばない(orchの起票はorch skillに従う)。

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

isizono/calm42026년 10월 16일 업데이트

【必須】open askを1件ずつ人間に提示し、回答をanswer_askで記録する。「askに答える」「open ask消化して」「溜まってるask片付けたい」などで発動。このスキルを経由せずにanswer_askを呼ばない。

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

isizono/calm42026년 10월 16일 업데이트

【必須】add_askでaskを起票する前に、question/contextをテンプレートで組み立てる。離席中・セッション跨ぎでしか答えられない判断が出たときや、「これ聞いといて」「判断委譲しといて」「後で確認して」などで発動。このスキルを経由せずにaskの文面を書かない(メタaskを除く)。

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

isizono/calm42026년 10월 16일 업데이트

add_askの応答のsimilar_asksを見て、同型の問いが繰り返され裁定が一貫していると気づいたとき、判例をまとめてメタask(kind="meta")を起票する。

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

isizono/calm42026년 10월 16일 업데이트

ask-watch

무료

人間の判断待ちaskの受け箱をMonitorで監視し、判断構造が同じopen askが溜まっていればメタaskを起票する。「ask storeを監視して」「asksを見張って」「open askの滞留をチェックして」などで発動。

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

isizono/calm42026년 10월 16일 업데이트

isizono의 스킬 모두 보기

이 스킬의 문제 신고