[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6CWP2649X2F3WZ6EBJHA4MS":3,"skill-same:01M6CWP2649X2F3WZ6EBJHA4MS":85},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":17,"publishedAt":31,"linkOnly":32,"markdownContent":33,"markdownBody":34,"frontMatter":35,"refName":36,"commitSha":37,"skillDirectory":38,"forksCount":39,"repositoryHtmlUrl":40,"repositoryHomepageUrl":6,"ownerHtmlUrl":41,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":42,"install":43,"resources":56},"01M6CWP2649X2F3WZ6EBJHA4MS","write-memory",null,"Executes a vault write handed off by another skill (recall, learn): composes the engram command from the provided fields, runs it, verifies the result, and reports the written note path. Requires a handoff — do not fire on your own judgment that something is worth remembering.","toejough\u002Fengram","toejough","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F5317312?v=4","01M6CWKZ6HJN0226G1FYVY0H0N","01M6CWKZAGT1SPMDWCZ3V8C1HZ",10,"Apache-2.0","https:\u002F\u002Fgithub.com\u002Ftoejough\u002Fengram\u002Fblob\u002Fmain\u002Fdev\u002Feval\u002Fcumulative\u002Frunbook_vs_skill\u002Fphase2\u002Fencodings\u002FtaskWriteMemory\u002FWM-S\u002Fskills\u002Fwrite-memory\u002FSKILL.md",[],[18,19,20,21,22,23,24,25,26,27,28,29,30],"memory","write","write memory","handoff","learn","vault","recall","command","reports","do","engram","another skill","judgment","2026-11-10 10:12:30",false,"---\nname: write-memory\ndescription: >\n  Executes a vault write handed off by another skill (recall, learn): composes the engram\n  command from the provided fields, runs it, verifies the result, and reports the written\n  note path. Requires a handoff — do not fire on your own judgment that something is worth\n  remembering.\n---\n\n# Write Memory — execute a handed-off vault write\n\nYou were invoked by a parent skill that already made the judgment (what to write and why).\nYour job is the write itself: compose, execute, verify, report. Do not re-litigate the\nparent's judgment; do not decide WHETHER to write.\n\n## The handoff contract\n\nThe parent provides:\n\n- **kind** — `fact`, `feedback`, `qa`, or `runbook`\n- **content fields** — by kind, per the blocks below\n- **source** — human-readable provenance string\n- optional **chunk-sources** — `\u003Csource#anchor>` chunk IDs (provenance)\n- optional **tags** — categorical `\u003Cfamily>` or `\u003Cfamily>\u002F\u003Cvalue>` strings (kebab-case;\n  fact\u002Ffeedback\u002Frunbook only), e.g. `work-kind\u002Frename`, `tier\u002Fcheap`, `outcome\u002Fpass`\n- optional **supersedes** — `\u003Cbasename>|\u003Ctype>|\u003Cclaim>` (types: `updates|narrows|refutes`),\n  when the parent determined this write corrects a surfaced note\n- optional **position** \u002F **target** — Luhmann placement (`top` (default), `continuation`, or\n  `sibling`) plus the target note ID (required when position is not `top`), when the parent made\n  a disposition decision. Omitted → `--position top` (today's default), fact\u002Ffeedback\u002Frunbook\n  only.\n- optional **red_flags** — task-specific failure modes a general \"follow the steps\" rule would\n  not catch (runbook only), e.g. \"filter-branch on all refs sweeps the backup branch\"\n- optional **triggers** — literal cues in a user's message that should surface this runbook first\n  (runbook only), e.g. `\u002Fplease`, \"take this end-to-end\"\n\nIf a required field is missing, ask for it from the in-session parent context — do not invent\ncontent on the parent's behalf.\n\n## Compose\n\nkind=feedback:\n\n```bash\nengram learn feedback --slug \u003Ckebab-slug> --position \u003Ctop|continuation|sibling> [--target \u003Cid>] \\\n  --source \"\u003Csource>\" \\\n  --situation \"\u003Cretrieval-shaped phrase: when does this apply>\" \\\n  --behavior \"\u003Cwhat was done>\" --impact \"\u003Cwhy it was wrong\u002Fcostly>\" --action \"\u003Cwhat to do instead>\" \\\n  [--tag \u003Cfamily>\u002F\u003Cvalue> ...]\n```\n\nkind=fact:\n\n```bash\nengram learn fact --slug \u003Ckebab-slug> --position \u003Ctop|continuation|sibling> [--target \u003Cid>] \\\n  --source \"\u003Csource>\" \\\n  --situation \"\u003Cretrieval-shaped phrase: when does this apply>\" \\\n  --subject \"\u003Cthe thing>\" --predicate \"\u003Crequires \u002F must use \u002F is>\" --object \"\u003Cthe standard or value>\" \\\n  [--tag \u003Cfamily>\u002F\u003Cvalue> ...]\n```\n\n`--position` defaults to `top` and `--target` is omitted whenever the parent's handoff doesn't\ninclude a position\u002Ftarget (today's behavior, unchanged). Include `--target \u003Cid>` only when\nposition is `continuation` or `sibling`; never emit `--target` alongside `--position top`.\n\nkind=runbook:\n\n```bash\nengram learn runbook --slug \u003Ckebab-slug> --position \u003Ctop|continuation|sibling> [--target \u003Cid>] \\\n  --source \"\u003Csource>\" \\\n  --situation \"\u003Cretrieval-shaped phrase: when should this runbook be used>\" \\\n  --done-when \"\u003Cwhat should be true when the procedure is complete>\" \\\n  --body \"\u003Cnumbered steps, may [[wikilink]] fact\u002Ffeedback notes to consider>\" \\\n  [--red-flag \"\u003Ctask-specific failure mode>\" ...] \\\n  [--trigger \"\u003Cliteral cue>\" ...] \\\n  [--tag \u003Cfamily>\u002F\u003Cvalue> ...]\n```\n\nSame `--position`\u002F`--target` disposition rules as fact\u002Ffeedback above. One `--red-flag` per\nhanded-off `red_flags` entry, in order; omit entirely when the parent's handoff carries no\nred_flags (no error, no empty flag).\n\nOne `--trigger` per handed-off `triggers` entry, in order, placed after any `--red-flag`; omit\nentirely when the handoff carries none. A trigger is a cue word or phrase the user (or an\nengram notice) would literally write: a slash form (`\u002Fplease`), a multi-word phrase (\"take this\nend-to-end\"), or a single distinctive word (`curate`), at least 3 characters. Matching is\ncase-insensitive, whitespace-collapsed, and whole-word at letter\u002Fdigit edges, so `curate` hits\n\"curate\" and \"\u002Fcurate\" but not \"accurate\". A single word must be distinctive enough that\nwhole-word matching will not fire on ordinary prose (`curate` qualifies; \"fix\", \"run\", \"the\"\ndo not). A handed-off single word that is common in ordinary prose → ask the parent for a\ndistinctive cue instead of passing it through, unless the handoff states that over-firing is a\ndeliberate, accepted choice (e.g. \"please\" on the please runbook, 2026-09-20); then pass it\nthrough. Over-firing is tolerable because a trigger hit only makes the runbook a candidate; the\nagent still judges it against the runbook's own `situation`, so triggers never replace a\nwell-written `--situation`.\n\nkind=qa:\n\n```bash\nengram learn qa \\\n  --slug \"\u003Ckebab summary of the question>\" \\\n  --question \"\u003Cverbatim question>\" \\\n  --answer \"\u003Cthe answer body, copied — no re-derive>\" \\\n  --contributors \"\u003Cfull-basename>\" \\\n  --certainty \"\u003Chigh|medium|low>\" \\\n  --source \"\u003Csource>\"\n```\n\nAppend to any kind:\n\n- one `--chunk-source \u003Csource#anchor>` per provided chunk ID\n- one `--tag \u003Ct>` per provided tag (fact\u002Ffeedback\u002Frunbook only — `engram learn qa` and\n  `engram amend` take no `--tag`; a qa handoff carrying tags → drop them and say so: append the\n  exact line `tags dropped: qa takes no tag flags` to whatever you output, even command-only\n  output)\n- `--supersedes \"\u003Cbasename>|\u003Ctype>|\u003Cclaim>\"` if provided (repeatable)\n- for qa: one `--contributors \u003Cfull-basename>` per basename the parent provided\n\nRules:\n\n- Never mix fact flags (`--subject\u002F--predicate\u002F--object`), feedback flags\n  (`--behavior\u002F--impact\u002F--action`), or runbook flags (`--done-when\u002F--body\u002F--red-flag\u002F--trigger`) in one command.\n- Never hand-author a `vocab\u002F\u003Cterm>` tag or a `Supersedes:` backlink — the binary assigns vocab\n  terms automatically as `vocab\u002F\u003Cterm>` entries in the `tags:` list, and writes the `Supersedes:`\n  body line itself when `--supersedes` is passed. This does NOT restrict inline `[[basename]]`\n  prose citations: hand-type one directly in `--body` or `--object` whenever the parent's handoff\n  content calls for citing a fact\u002Ffeedback note — ordinary authoring, no CLI mechanism does it for\n  you. Handed-off --tag categoricals ride the same `tags:` list as vocab but are NOT vocab: pass\n  them through exactly as provided; never invent tags and never write the `vocab\u002F` namespace\n  yourself.\n\n## Execute, verify, report\n\nRun the command. On success the CLI prints the written note path(s).\n\n- CLI error → read it, fix exactly the named problem (missing\u002Ftypo'd flag, bad value), retry.\n  Max 2 retries.\n- Success → report the printed note path(s) to the parent flow in one line.\n- Still failing after retries → report the exact command and the CLI error verbatim. Never\n  silently skip a handed-off write.\n","# Write Memory — execute a handed-off vault write\n\nYou were invoked by a parent skill that already made the judgment (what to write and why).\nYour job is the write itself: compose, execute, verify, report. Do not re-litigate the\nparent's judgment; do not decide WHETHER to write.\n\n## The handoff contract\n\nThe parent provides:\n\n- **kind** — `fact`, `feedback`, `qa`, or `runbook`\n- **content fields** — by kind, per the blocks below\n- **source** — human-readable provenance string\n- optional **chunk-sources** — `\u003Csource#anchor>` chunk IDs (provenance)\n- optional **tags** — categorical `\u003Cfamily>` or `\u003Cfamily>\u002F\u003Cvalue>` strings (kebab-case;\n  fact\u002Ffeedback\u002Frunbook only), e.g. `work-kind\u002Frename`, `tier\u002Fcheap`, `outcome\u002Fpass`\n- optional **supersedes** — `\u003Cbasename>|\u003Ctype>|\u003Cclaim>` (types: `updates|narrows|refutes`),\n  when the parent determined this write corrects a surfaced note\n- optional **position** \u002F **target** — Luhmann placement (`top` (default), `continuation`, or\n  `sibling`) plus the target note ID (required when position is not `top`), when the parent made\n  a disposition decision. Omitted → `--position top` (today's default), fact\u002Ffeedback\u002Frunbook\n  only.\n- optional **red_flags** — task-specific failure modes a general \"follow the steps\" rule would\n  not catch (runbook only), e.g. \"filter-branch on all refs sweeps the backup branch\"\n- optional **triggers** — literal cues in a user's message that should surface this runbook first\n  (runbook only), e.g. `\u002Fplease`, \"take this end-to-end\"\n\nIf a required field is missing, ask for it from the in-session parent context — do not invent\ncontent on the parent's behalf.\n\n## Compose\n\nkind=feedback:\n\n```bash\nengram learn feedback --slug \u003Ckebab-slug> --position \u003Ctop|continuation|sibling> [--target \u003Cid>] \\\n  --source \"\u003Csource>\" \\\n  --situation \"\u003Cretrieval-shaped phrase: when does this apply>\" \\\n  --behavior \"\u003Cwhat was done>\" --impact \"\u003Cwhy it was wrong\u002Fcostly>\" --action \"\u003Cwhat to do instead>\" \\\n  [--tag \u003Cfamily>\u002F\u003Cvalue> ...]\n```\n\nkind=fact:\n\n```bash\nengram learn fact --slug \u003Ckebab-slug> --position \u003Ctop|continuation|sibling> [--target \u003Cid>] \\\n  --source \"\u003Csource>\" \\\n  --situation \"\u003Cretrieval-shaped phrase: when does this apply>\" \\\n  --subject \"\u003Cthe thing>\" --predicate \"\u003Crequires \u002F must use \u002F is>\" --object \"\u003Cthe standard or value>\" \\\n  [--tag \u003Cfamily>\u002F\u003Cvalue> ...]\n```\n\n`--position` defaults to `top` and `--target` is omitted whenever the parent's handoff doesn't\ninclude a position\u002Ftarget (today's behavior, unchanged). Include `--target \u003Cid>` only when\nposition is `continuation` or `sibling`; never emit `--target` alongside `--position top`.\n\nkind=runbook:\n\n```bash\nengram learn runbook --slug \u003Ckebab-slug> --position \u003Ctop|continuation|sibling> [--target \u003Cid>] \\\n  --source \"\u003Csource>\" \\\n  --situation \"\u003Cretrieval-shaped phrase: when should this runbook be used>\" \\\n  --done-when \"\u003Cwhat should be true when the procedure is complete>\" \\\n  --body \"\u003Cnumbered steps, may [[wikilink]] fact\u002Ffeedback notes to consider>\" \\\n  [--red-flag \"\u003Ctask-specific failure mode>\" ...] \\\n  [--trigger \"\u003Cliteral cue>\" ...] \\\n  [--tag \u003Cfamily>\u002F\u003Cvalue> ...]\n```\n\nSame `--position`\u002F`--target` disposition rules as fact\u002Ffeedback above. One `--red-flag` per\nhanded-off `red_flags` entry, in order; omit entirely when the parent's handoff carries no\nred_flags (no error, no empty flag).\n\nOne `--trigger` per handed-off `triggers` entry, in order, placed after any `--red-flag`; omit\nentirely when the handoff carries none. A trigger is a cue word or phrase the user (or an\nengram notice) would literally write: a slash form (`\u002Fplease`), a multi-word phrase (\"take this\nend-to-end\"), or a single distinctive word (`curate`), at least 3 characters. Matching is\ncase-insensitive, whitespace-collapsed, and whole-word at letter\u002Fdigit edges, so `curate` hits\n\"curate\" and \"\u002Fcurate\" but not \"accurate\". A single word must be distinctive enough that\nwhole-word matching will not fire on ordinary prose (`curate` qualifies; \"fix\", \"run\", \"the\"\ndo not). A handed-off single word that is common in ordinary prose → ask the parent for a\ndistinctive cue instead of passing it through, unless the handoff states that over-firing is a\ndeliberate, accepted choice (e.g. \"please\" on the please runbook, 2026-09-20); then pass it\nthrough. Over-firing is tolerable because a trigger hit only makes the runbook a candidate; the\nagent still judges it against the runbook's own `situation`, so triggers never replace a\nwell-written `--situation`.\n\nkind=qa:\n\n```bash\nengram learn qa \\\n  --slug \"\u003Ckebab summary of the question>\" \\\n  --question \"\u003Cverbatim question>\" \\\n  --answer \"\u003Cthe answer body, copied — no re-derive>\" \\\n  --contributors \"\u003Cfull-basename>\" \\\n  --certainty \"\u003Chigh|medium|low>\" \\\n  --source \"\u003Csource>\"\n```\n\nAppend to any kind:\n\n- one `--chunk-source \u003Csource#anchor>` per provided chunk ID\n- one `--tag \u003Ct>` per provided tag (fact\u002Ffeedback\u002Frunbook only — `engram learn qa` and\n  `engram amend` take no `--tag`; a qa handoff carrying tags → drop them and say so: append the\n  exact line `tags dropped: qa takes no tag flags` to whatever you output, even command-only\n  output)\n- `--supersedes \"\u003Cbasename>|\u003Ctype>|\u003Cclaim>\"` if provided (repeatable)\n- for qa: one `--contributors \u003Cfull-basename>` per basename the parent provided\n\nRules:\n\n- Never mix fact flags (`--subject\u002F--predicate\u002F--object`), feedback flags\n  (`--behavior\u002F--impact\u002F--action`), or runbook flags (`--done-when\u002F--body\u002F--red-flag\u002F--trigger`) in one command.\n- Never hand-author a `vocab\u002F\u003Cterm>` tag or a `Supersedes:` backlink — the binary assigns vocab\n  terms automatically as `vocab\u002F\u003Cterm>` entries in the `tags:` list, and writes the `Supersedes:`\n  body line itself when `--supersedes` is passed. This does NOT restrict inline `[[basename]]`\n  prose citations: hand-type one directly in `--body` or `--object` whenever the parent's handoff\n  content calls for citing a fact\u002Ffeedback note — ordinary authoring, no CLI mechanism does it for\n  you. Handed-off --tag categoricals ride the same `tags:` list as vocab but are NOT vocab: pass\n  them through exactly as provided; never invent tags and never write the `vocab\u002F` namespace\n  yourself.\n\n## Execute, verify, report\n\nRun the command. On success the CLI prints the written note path(s).\n\n- CLI error → read it, fix exactly the named problem (missing\u002Ftypo'd flag, bad value), retry.\n  Max 2 retries.\n- Success → report the printed note path(s) to the parent flow in one line.\n- Still failing after retries → report the exact command and the CLI error verbatim. Never\n  silently skip a handed-off write.\n",{"name":5,"description":7},"main","d2ce817c74ee4fc65645635887510b47b231230f","dev\u002Feval\u002Fcumulative\u002Frunbook_vs_skill\u002Fphase2\u002Fencodings\u002FtaskWriteMemory\u002FWM-S\u002Fskills\u002Fwrite-memory",2,"https:\u002F\u002Fgithub.com\u002Ftoejough\u002Fengram","https:\u002F\u002Fgithub.com\u002Ftoejough","2026-10-25 06:42:30",{"source":8,"skillName":5,"commands":44,"prompt":54,"zipAvailable":55},[45,48,51],{"tool":46,"command":47},"npx","npx skills add toejough\u002Fengram --skill write-memory",{"tool":49,"command":50},"bunx","bunx skills add toejough\u002Fengram --skill write-memory",{"tool":52,"command":53},"pnpm","pnpm dlx skills add toejough\u002Fengram --skill write-memory","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Ftoejough\u002Fengram\u002Fblob\u002Fmain\u002Fdev\u002Feval\u002Fcumulative\u002Frunbook_vs_skill\u002Fphase2\u002Fencodings\u002FtaskWriteMemory\u002FWM-S\u002Fskills\u002Fwrite-memory\u002FSKILL.md",true,[57,63,69,73,77,81],{"path":58,"resourceType":59,"resourceTypeDesc":60,"sizeBytes":61,"sourceHtmlUrl":62},"agents\u002Fopenai.yaml","REFERENCE","参考文档",445,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fgreg-asher\u002Fcodex-obsidian\u002Fskills\u002Fobsidian-cli-bases-and-bookmarks\u002Fagents\u002Fopenai.yaml",{"path":64,"resourceType":65,"resourceTypeDesc":66,"sizeBytes":67,"sourceHtmlUrl":68},"assets\u002Feval-prompts.csv","ASSET","资产文件",1091,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fgreg-asher\u002Fcodex-obsidian\u002Fskills\u002Fobsidian-cli-bases-and-bookmarks\u002Fassets\u002Feval-prompts.csv",{"path":70,"resourceType":59,"resourceTypeDesc":60,"sizeBytes":71,"sourceHtmlUrl":72},"references\u002Flimitations-and-boundaries.md",688,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fgreg-asher\u002Fcodex-obsidian\u002Fskills\u002Fobsidian-cli-bases-and-bookmarks\u002Freferences\u002Flimitations-and-boundaries.md",{"path":74,"resourceType":59,"resourceTypeDesc":60,"sizeBytes":75,"sourceHtmlUrl":76},"references\u002Fobsidian-cli-bases-bookmarks-playbook.md",1097,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fgreg-asher\u002Fcodex-obsidian\u002Fskills\u002Fobsidian-cli-bases-and-bookmarks\u002Freferences\u002Fobsidian-cli-bases-bookmarks-playbook.md",{"path":78,"resourceType":59,"resourceTypeDesc":60,"sizeBytes":79,"sourceHtmlUrl":80},"references\u002Fsource-links.md",109,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fgreg-asher\u002Fcodex-obsidian\u002Fskills\u002Fobsidian-cli-bases-and-bookmarks\u002Freferences\u002Fsource-links.md",{"path":82,"resourceType":59,"resourceTypeDesc":60,"sizeBytes":83,"sourceHtmlUrl":84},"references\u002Fvalidation.md",475,"https:\u002F\u002Fgithub.com\u002Fhashgraph-online\u002Fawesome-codex-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fgreg-asher\u002Fcodex-obsidian\u002Fskills\u002Fobsidian-cli-bases-and-bookmarks\u002Freferences\u002Fvalidation.md",[86,101,106,111,132,150],{"skillNo":87,"name":24,"nameZh":6,"description":88,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":89,"categories":90,"keywords":91,"publishedAt":31},"01M6CWPEHWS45MANQE0JW6Z146","Use after any user request that might entail more than a single tool call or anything more than quick, shallow thinking. This surfaces relevant memories that are VITAL to recall for a good user experience and a greater chance at first-pass success for the user's request.","https:\u002F\u002Fgithub.com\u002Ftoejough\u002Fengram\u002Fblob\u002Fmain\u002Fdev\u002Feval\u002Fcumulative\u002Fskills_auto_l2\u002Frecall\u002FSKILL.md",[],[24,92,93,94,95,96,97,98,99,100],"first","tool","user","use","good","surfaces","thinking","call","memories",{"skillNo":102,"name":24,"nameZh":6,"description":88,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":103,"categories":104,"keywords":105,"publishedAt":31},"01M6CWPAZ9N9CE1RC754XEJ021","https:\u002F\u002Fgithub.com\u002Ftoejough\u002Fengram\u002Fblob\u002Fmain\u002Fdev\u002Feval\u002Fcumulative\u002Fskills_auto\u002Frecall\u002FSKILL.md",[],[24,92,93,98,94,95,96,97,99,100],{"skillNo":107,"name":24,"nameZh":6,"description":88,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":108,"categories":109,"keywords":110,"publishedAt":31},"01M6CWP862CSBPDF1QW19P6C0F","https:\u002F\u002Fgithub.com\u002Ftoejough\u002Fengram\u002Fblob\u002Fmain\u002Fdev\u002Feval\u002Fcumulative\u002Frunbook_vs_skill\u002Fphase2\u002Fencodings\u002FtaskWriteMemory\u002Frecall-learn\u002Frecall\u002FSKILL.md",[],[24,98,97,96,95,99,94,100,93,92],{"skillNo":112,"name":22,"nameZh":6,"description":113,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":114,"categories":115,"keywords":116,"publishedAt":31},"01M6CWP4XPAJYCJMZAPYNWTN3A","Use after work begun with recall, or any work requiring more than one tool call or non-trivial thought. Use immediately for explicit save requests (\"remember this\", \"save that\", \"note for next time\"), and the moment a review, failing check, or user correction confirms a lesson; capture it before applying the fix. Also use at session end when a presented conclusion, design, or finding was later overturned or corrected. Use when a specific approach is confirmed: the user praises a reusable behavior, or an uncertain choice succeeds with observable evidence. This preserves lessons for future recall.","https:\u002F\u002Fgithub.com\u002Ftoejough\u002Fengram\u002Fblob\u002Fmain\u002Fdev\u002Feval\u002Fcumulative\u002Frunbook_vs_skill\u002Fphase2\u002Fencodings\u002FtaskWriteMemory\u002Frecall-learn\u002Flearn\u002FSKILL.md",[],[22,99,93,117,118,119,24,120,121,122,123,124,125,95,126,127,128,129,130,131],"design","review","remember","choice","work","check","behavior","fix","session","evidence","reusable","later","lesson","next","time",{"skillNo":133,"name":134,"nameZh":6,"description":135,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":136,"categories":137,"keywords":143,"publishedAt":31},"01M6CWNYJCGD4B180MM5852D1N","test-driven-development","Use when implementing any feature or bugfix, before writing implementation code","https:\u002F\u002Fgithub.com\u002Ftoejough\u002Fengram\u002Fblob\u002Fmain\u002Fdev\u002Feval\u002Fcumulative\u002Frunbook_vs_skill\u002Fphase2\u002Fencodings\u002FtaskTDD\u002FTDD-S\u002Fskills\u002Ftest-driven-development\u002FSKILL.md",[138],{"categoryNo":139,"categoryName":140,"taxonomyType":141,"taxonomyTypeDesc":142},"01JBSEEDCAT000000000000008","测试与质量","SCENARIO","使用场景",[144,145,146,147,148,95,149],"development","test driven development","test","writing","code","implementation",{"skillNo":151,"name":152,"nameZh":6,"description":153,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":154,"categories":155,"keywords":156,"publishedAt":31},"01M6CWNTQ5K1QXT21JAN2ZQ5KR","route","Use when you are about to dispatch a subagent and must decide its agent type, model, and effort level. Triggers on any delegation decision, and when you recognize a unit is too large for one focused agent and needs decomposition before dispatch.","https:\u002F\u002Fgithub.com\u002Ftoejough\u002Fengram\u002Fblob\u002Fmain\u002Fdev\u002Feval\u002Fcumulative\u002Frunbook_vs_skill\u002Fphase2\u002Fencodings\u002FtaskRoute\u002FRoute-S\u002Fskills\u002Froute\u002FSKILL.md",[],[152,157,158,159,160,95,161,162],"subagent","model","decision","decide","dispatch","delegation"]