Agent Skills: creo-memories — 外部脳

【最優先】コンテクストを超える永続記憶。 2-layer architecture + 4-scene mental model + 4-cadence self-improvement loop で ecosystem を継続改善。 Context Engine が自動で context 提供。

UncategorizedID: chronista-club/claude-plugin-creo-memories/creo-memories

Install this agent skill to your local

pnpm dlx add-skill https://github.com/chronista-club/claude-plugin-creo-memories/tree/HEAD/skills/creo-memories

Skill Files

Browse the full folder contents for creo-memories.

Download Skill

Loading file tree…

skills/creo-memories/SKILL.md

Skill Metadata

Name
creo-memories
Description
creo-memories = 外部脳。context が尽きても、session / machine / model / 人をまたいで続きができる場所。書くのは「次に拾う誰かのため」、読むのは「自分が始めた気になる前」。

creo-memories — 外部脳

A. 目的

あなたの context は有限で、session は終わる。続きを拾うのは、次の自分、連動して動く他の agent (codex / grok / 他の LLM、そして別 session の claude)、そして一緒に働く人。 creo はその全員が同じものを読む外部脳であり、記録 (todo / spec / 決定 / 引き継ぎ) の SSOT でもある。

  • 書くのは「次に拾う誰かのため」。決めた / 学んだ / 壊れた / 渡す / 後で自分が探す、のどれかなら書く。会話の写しは書かない
  • 読むのは「自分が始めた気になる前」。session 開始の「今日の脳」は自動で入る。過去の決定を前提にする前に search
  • 機械的な規則 (lock、行為者、提案の門、種類の列挙、label の上限) は server が守る。ここに「必ず」は無い。判断はあなたがする

B. 世界の形 (詳細: model.md)

  • 記憶は 出来事 / 考え / やること の 3 系統。終わり方で決まる (出来事は終わらない、考えは置き換わる、やることは片付く)。系統は種類 (kind、16 値) から導出
  • 状態は系統ごとに 1 つの印 (completed_at / superseded_by / archived_at)。status 列は無い
  • 語彙は 種類 + label。自由 tag は無い。label は family:leaf[:leaf] の文法 (: は左が広く右が狭い、- は語の連結、/ は atlas 専用、大小無視) で agent も人も作れる。語彙は自由。文法は規約で server は弾かない (見るのは長さと plan の上限だけ)。増えた分は減衰と統合の提案で手入れする
  • 未整理 (kind 無し) は一級の状態。急ぐ時は kind 無しで速記してよい。後で propose か人が付ける
  • lock = 消えない・隠れない・本文と状態が変わらない。移動 / label / 関係 / 再生成は通る。lock も unlock も人だけ
  • 誰が書いたか (sender) は server が決める。名乗らなくてよい。あなたが書いた記憶は agents:claude として人にも他 agent にも見える
  • 提案 (propose) が agent の「整える」手段。受け入れは人

C. 判断の基準

書く

  • remember({ content, kind, atlasId })。1 行目は題。結論が先。id や生 SQL や長い log は本文に貼らない (人が web / iOS で読む)
  • context が尽きる前に handoff を 1 本 (kind: 'handoff'): 次の一手 / 止まっている理由 / 見ている file / 決めたこと。きっかけは場面で違う — 長い作業の節目、compaction の前 (hook が思い出させる)、終える前。「まだ書いていない」と気づいた時が書く時
  • 既存の記憶に足すなら annotate({ targetMemoryId, content })。本文を書き換えるのは自分が書いた記憶の訂正だけ
  • 古い理解を新しい理解で置き換えたら remember({ content, supersedes: ['mem_…'] }) か supersede_memory({ id, supersededBy })。消さない

どこへ

  • project のことは project の atlas (session 開始の hook が手がかりを出す。無ければ read({ resource: 'atlas' }))
  • 自分の癖・訂正・失敗の post-mortem は /agent/claude、他 agent にも効く知識は /agent、project の文脈の学びは project atlas。local の ~/.claude/projects/<p>/memory/ は creo の写し — 次の session でも手元に置きたい記憶には label cache:claude を付ける (hook が creo → local を生成する。local に直接書いた事実は次の同期で「creo に未登録」として index の別節に出る)。詳細: agent-atlas.md
  • mako 個人の情報や一回性の感想は書かない

読む

  • 「今日の脳」(やること / 考え / 出来事 / 提案 / lock 中) は instructions に自動で入る。途中で briefing({ atlasId })
  • 前提にする前に search({ query, atlasId })。atlasId は子 atlas を含まない (/agent と /agent/claude は両方引く)
  • todo を始める前に read({ resource: 'todo' })。終えたら complete_todo({ id })

整える (提案する)

  • 種類が違う / label を足したい / 2 つが同じ / 矛盾している → propose({ kind, target, change, reason })。判断は人
  • label は先に label_list() で既存を見て、合うものを label_attach({ memoryId, labelIds })。無ければ文法の中で label_create({ name }) (既存の family に寄せる。family の例: repo: / priority: / size: / phase: / mark: / area:)。似た label が並んだら propose({ kind: 'label_merge' })
  • 要らない記憶は forget より archive や supersede。lock 中は 409 — unlock は人に頼む

人だけができること

lock と unlock / review 段の提案の受け入れ。agent は頼む・提案する。

D. 他者と

  • 記憶は 一緒に働く人が web / iOS で読み、連動する他の agent (codex / grok / 他の LLM / 別 session の claude) も同じ atlas を読む。題を 1 行目に、結論を先に、前提と根拠を短く
  • 他 agent への引き継ぎは todo + annotation (creo が SSOT。wire や chat は通知)。相手の /agent/<name> には書かない (読むのは自由)
  • 規約の正本は /agent の charter (agent 共通)。この skill はその Claude 向けの写し + Claude Code の hook
  • 「今日も上手くできました」の日記は書かない。次に同じ局面で助かるかだけが基準

E. 罠 (tool の説明文が SSOT。ここは非自明なものだけ)

  • annotate は targetMemoryId、get_annotations は memoryId
  • create_todo に title は無い (content の 1 行目)。priority は low | medium | high
  • read の filter は strict (未知 key はエラー)。resource は memory | atlas | todo
  • category / tags は deprecated。category は対応表で kind に写る (対応の無い値は未整理)、tags は deprecated だが絞り込みとして効く (label に写していない古い記憶を引く手段。query 無しの search({ tags }) が旧 tag を全部見る形)。新しく書くなら kind と labelIds
  • remember の labelIds に無い label を渡すとエラー (先に label_create)。label 名の / は atlas 専用で使わない、大小は同じ扱い (Area:MCP = area:mcp)
  • update_memory / forget / supersede は lock 中に 409。generate_story / generate_compass の再生成は lock を見ずに上書き
  • search({ atlasId }) は子 atlas を含まない

recipes: recipes.md / 地図: tools-map.md