[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6J6HAZXHFCY1DPCXAWN1CXG":3,"skill-same:01M6J6HAZXHFCY1DPCXAWN1CXG":65},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":22,"publishedAt":39,"linkOnly":40,"markdownContent":41,"markdownBody":42,"frontMatter":43,"refName":44,"commitSha":45,"skillDirectory":46,"forksCount":47,"repositoryHtmlUrl":48,"repositoryHomepageUrl":6,"ownerHtmlUrl":49,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":50,"install":51,"resources":64},"01M6J6HAZXHFCY1DPCXAWN1CXG","agent-memory",null,"Use this skill when the user asks to save, remember, recall, or organize memories. Triggers on: 'remember this', 'save this', 'note this', 'what did we discuss about...', 'check your notes', 'clean up memories'. Also use proactively when discovering valuable findings worth preserving.","caobingsheng\u002Fskills","caobingsheng","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F18641728?v=4","01M6J6H1N0RR38WEA1KVM9V4GB","01M6J6H1SB287CPJQARKE9FXS0",1,"MIT","https:\u002F\u002Fgithub.com\u002Fcaobingsheng\u002Fskills\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fagent-memory\u002FSKILL.md",[17],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38],"memory","agent memory","remember","notes","save","recall","check","user","use","up","clean","organize","memories","triggers","note","about","2026-11-10 10:12:30",false,"---\nname: agent-memory\ndescription: \"Use this skill when the user asks to save, remember, recall, or organize memories. Triggers on: 'remember this', 'save this', 'note this', 'what did we discuss about...', 'check your notes', 'clean up memories'. Also use proactively when discovering valuable findings worth preserving.\"\n---\n\n# Agent Memory\n\nA persistent memory space for storing knowledge that survives across conversations.\n\n**Location:** `.claude\u002Fskills\u002Fagent-memory\u002Fmemories\u002F`\n\n## Proactive Usage\n\nSave memories when you discover something worth preserving:\n- Research findings that took effort to uncover\n- Non-obvious patterns or gotchas in the codebase\n- Solutions to tricky problems\n- Architectural decisions and their rationale\n\nCheck memories when starting related work:\n- Before investigating a problem area\n- When working on a feature you've touched before\n\nOrganize memories when needed:\n- Consolidate scattered memories on the same topic\n- Remove outdated or superseded information\n\n## Folder Structure\n\nWhen possible, organize memories into category folders. No predefined structure - create categories that make sense for the content.\n\nGuidelines:\n- Use kebab-case for folder and file names\n- Consolidate or reorganize as the knowledge base evolves\n\nExample:\n```text\nmemories\u002F\n├── file-processing\u002F\n│   └── large-file-memory-issue.md\n├── dependencies\u002F\n│   └── iconv-esm-problem.md\n└── project-context\u002F\n    └── december-2025-work.md\n```\n\nThis is just an example. Structure freely based on actual content.\n\n## Frontmatter\n\nAll memories must include frontmatter with a `summary` field. The summary should be concise enough to determine whether to read the full content.\n\n**Required:**\n```yaml\n---\nsummary: \"1-2 line description of what this memory contains\"\ncreated: 2025-01-15  # YYYY-MM-DD format\n---\n```\n\n**Optional:**\n```yaml\n---\nsummary: \"Worker thread memory leak during large file processing - cause and solution\"\ncreated: 2025-01-15\nupdated: 2025-01-20\ntags: [performance, worker, memory-leak]\nrelated: [src\u002Fcore\u002Ffile\u002FfileProcessor.ts]\n---\n```\n\n## Search Workflow\n\nUse summary-first approach to efficiently find relevant memories:\n\n```bash\n# 1. List categories\nls .claude\u002Fskills\u002Fagent-memory\u002Fmemories\u002F\n\n# 2. View all summaries\nrg \"^summary:\" .claude\u002Fskills\u002Fagent-memory\u002Fmemories\u002F --no-ignore --hidden\n\n# 3. Search summaries for keyword\nrg \"^summary:.*keyword\" .claude\u002Fskills\u002Fagent-memory\u002Fmemories\u002F --no-ignore --hidden -i\n\n# 4. Search by tag\nrg \"^tags:.*keyword\" .claude\u002Fskills\u002Fagent-memory\u002Fmemories\u002F --no-ignore --hidden -i\n\n# 5. Full-text search (when summary search isn't enough)\nrg \"keyword\" .claude\u002Fskills\u002Fagent-memory\u002Fmemories\u002F --no-ignore --hidden -i\n\n# 6. Read specific memory file if relevant\n```\n\n**Note:** Memory files are gitignored, so use `--no-ignore` and `--hidden` flags with ripgrep.\n\n## Operations\n\n### Save\n\n1. Determine appropriate category for the content\n2. Check if existing category fits, or create new one\n3. Write file with required frontmatter (use `date +%Y-%m-%d` for current date)\n\n```bash\nmkdir -p .claude\u002Fskills\u002Fagent-memory\u002Fmemories\u002Fcategory-name\u002F\n# Note: Check if file exists before writing to avoid accidental overwrites\ncat > .claude\u002Fskills\u002Fagent-memory\u002Fmemories\u002Fcategory-name\u002Ffilename.md \u003C\u003C 'EOF'\n---\nsummary: \"Brief description of this memory\"\ncreated: 2025-01-15\n---\n\n# Title\n\nContent here...\nEOF\n```\n\n### Maintain\n\n- **Update**: When information changes, update the content and add `updated` field to frontmatter\n- **Delete**: Remove memories that are no longer relevant\n  ```bash\n  trash .claude\u002Fskills\u002Fagent-memory\u002Fmemories\u002Fcategory-name\u002Ffilename.md\n  # Remove empty category folders\n  rmdir .claude\u002Fskills\u002Fagent-memory\u002Fmemories\u002Fcategory-name\u002F 2>\u002Fdev\u002Fnull || true\n  ```\n- **Consolidate**: Merge related memories when they grow\n- **Reorganize**: Move memories to better-fitting categories as the knowledge base evolves\n\n## Guidelines\n\n1. **Write for your future self**: Include enough context to be useful later\n2. **Keep summaries decisive**: Reading the summary should tell you if you need the details\n3. **Stay current**: Update or delete outdated information\n4. **Be practical**: Save what's actually useful, not everything\n","# Agent Memory\n\nA persistent memory space for storing knowledge that survives across conversations.\n\n**Location:** `.claude\u002Fskills\u002Fagent-memory\u002Fmemories\u002F`\n\n## Proactive Usage\n\nSave memories when you discover something worth preserving:\n- Research findings that took effort to uncover\n- Non-obvious patterns or gotchas in the codebase\n- Solutions to tricky problems\n- Architectural decisions and their rationale\n\nCheck memories when starting related work:\n- Before investigating a problem area\n- When working on a feature you've touched before\n\nOrganize memories when needed:\n- Consolidate scattered memories on the same topic\n- Remove outdated or superseded information\n\n## Folder Structure\n\nWhen possible, organize memories into category folders. No predefined structure - create categories that make sense for the content.\n\nGuidelines:\n- Use kebab-case for folder and file names\n- Consolidate or reorganize as the knowledge base evolves\n\nExample:\n```text\nmemories\u002F\n├── file-processing\u002F\n│   └── large-file-memory-issue.md\n├── dependencies\u002F\n│   └── iconv-esm-problem.md\n└── project-context\u002F\n    └── december-2025-work.md\n```\n\nThis is just an example. Structure freely based on actual content.\n\n## Frontmatter\n\nAll memories must include frontmatter with a `summary` field. The summary should be concise enough to determine whether to read the full content.\n\n**Required:**\n```yaml\n---\nsummary: \"1-2 line description of what this memory contains\"\ncreated: 2025-01-15  # YYYY-MM-DD format\n---\n```\n\n**Optional:**\n```yaml\n---\nsummary: \"Worker thread memory leak during large file processing - cause and solution\"\ncreated: 2025-01-15\nupdated: 2025-01-20\ntags: [performance, worker, memory-leak]\nrelated: [src\u002Fcore\u002Ffile\u002FfileProcessor.ts]\n---\n```\n\n## Search Workflow\n\nUse summary-first approach to efficiently find relevant memories:\n\n```bash\n# 1. List categories\nls .claude\u002Fskills\u002Fagent-memory\u002Fmemories\u002F\n\n# 2. View all summaries\nrg \"^summary:\" .claude\u002Fskills\u002Fagent-memory\u002Fmemories\u002F --no-ignore --hidden\n\n# 3. Search summaries for keyword\nrg \"^summary:.*keyword\" .claude\u002Fskills\u002Fagent-memory\u002Fmemories\u002F --no-ignore --hidden -i\n\n# 4. Search by tag\nrg \"^tags:.*keyword\" .claude\u002Fskills\u002Fagent-memory\u002Fmemories\u002F --no-ignore --hidden -i\n\n# 5. Full-text search (when summary search isn't enough)\nrg \"keyword\" .claude\u002Fskills\u002Fagent-memory\u002Fmemories\u002F --no-ignore --hidden -i\n\n# 6. Read specific memory file if relevant\n```\n\n**Note:** Memory files are gitignored, so use `--no-ignore` and `--hidden` flags with ripgrep.\n\n## Operations\n\n### Save\n\n1. Determine appropriate category for the content\n2. Check if existing category fits, or create new one\n3. Write file with required frontmatter (use `date +%Y-%m-%d` for current date)\n\n```bash\nmkdir -p .claude\u002Fskills\u002Fagent-memory\u002Fmemories\u002Fcategory-name\u002F\n# Note: Check if file exists before writing to avoid accidental overwrites\ncat > .claude\u002Fskills\u002Fagent-memory\u002Fmemories\u002Fcategory-name\u002Ffilename.md \u003C\u003C 'EOF'\n---\nsummary: \"Brief description of this memory\"\ncreated: 2025-01-15\n---\n\n# Title\n\nContent here...\nEOF\n```\n\n### Maintain\n\n- **Update**: When information changes, update the content and add `updated` field to frontmatter\n- **Delete**: Remove memories that are no longer relevant\n  ```bash\n  trash .claude\u002Fskills\u002Fagent-memory\u002Fmemories\u002Fcategory-name\u002Ffilename.md\n  # Remove empty category folders\n  rmdir .claude\u002Fskills\u002Fagent-memory\u002Fmemories\u002Fcategory-name\u002F 2>\u002Fdev\u002Fnull || true\n  ```\n- **Consolidate**: Merge related memories when they grow\n- **Reorganize**: Move memories to better-fitting categories as the knowledge base evolves\n\n## Guidelines\n\n1. **Write for your future self**: Include enough context to be useful later\n2. **Keep summaries decisive**: Reading the summary should tell you if you need the details\n3. **Stay current**: Update or delete outdated information\n4. **Be practical**: Save what's actually useful, not everything\n",{"name":5,"description":7},"main","309495d95536f4a5e4db1a251f246589229e13e8",".claude\u002Fskills\u002Fagent-memory",0,"https:\u002F\u002Fgithub.com\u002Fcaobingsheng\u002Fskills","https:\u002F\u002Fgithub.com\u002Fcaobingsheng","2026-04-11 12:21:07",{"source":8,"skillName":5,"commands":52,"prompt":62,"zipAvailable":63},[53,56,59],{"tool":54,"command":55},"npx","npx skills add caobingsheng\u002Fskills --skill agent-memory",{"tool":57,"command":58},"bunx","bunx skills add caobingsheng\u002Fskills --skill agent-memory",{"tool":60,"command":61},"pnpm","pnpm dlx skills add caobingsheng\u002Fskills --skill agent-memory","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fcaobingsheng\u002Fskills\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fagent-memory\u002FSKILL.md",true,[],[66,84,100,113,124,154],{"skillNo":67,"name":68,"nameZh":6,"description":69,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":70,"categories":71,"keywords":75,"publishedAt":39},"01M6J72F9FX5W05JHBQQW9EHS5","tdd-workflows-tdd-refactor","Use when working with tdd workflows tdd refactor","https:\u002F\u002Fgithub.com\u002Fcaobingsheng\u002Fskills\u002Fblob\u002Fmain\u002Ftdd\u002Ftdd-workflows-tdd-refactor\u002FSKILL.md",[72],{"categoryNo":73,"categoryName":74,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000007","代码审查",[76,77,78,79,80,31,81,82,83],"tdd","workflows","refactor","tdd workflows","tdd workflows tdd refactor","community","with","unknown",{"skillNo":85,"name":86,"nameZh":6,"description":87,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":88,"categories":89,"keywords":90,"publishedAt":39},"01M6J72BQ4NV5HEX94RQJ8B4J2","tdd-workflows-tdd-red","Generate failing tests for the TDD red phase to define expected behavior and edge cases.","https:\u002F\u002Fgithub.com\u002Fcaobingsheng\u002Fskills\u002Fblob\u002Fmain\u002Ftdd\u002Ftdd-workflows-tdd-red\u002FSKILL.md",[],[91,76,77,92,79,93,94,95,81,96,97,98,99,83],"red","tdd workflows tdd red","edge","generate","behavior","define","tests","for","expected",{"skillNo":101,"name":102,"nameZh":6,"description":103,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":104,"categories":105,"keywords":106,"publishedAt":39},"01M6J727C8Q52EG3RTQWMC2X61","tdd-workflows-tdd-green","Implement the minimal code needed to make failing tests pass in the TDD green phase.","https:\u002F\u002Fgithub.com\u002Fcaobingsheng\u002Fskills\u002Fblob\u002Fmain\u002Ftdd\u002Ftdd-workflows-tdd-green\u002FSKILL.md",[],[107,79,108,77,76,109,81,110,111,97,112,83],"green","tdd workflows tdd green","implement","minimal","code","make",{"skillNo":114,"name":115,"nameZh":6,"description":116,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":117,"categories":118,"keywords":120,"publishedAt":39},"01M6J723JYFES8D9PHGY81QBHZ","tdd-workflows-tdd-cycle","Use when working with tdd workflows tdd cycle","https:\u002F\u002Fgithub.com\u002Fcaobingsheng\u002Fskills\u002Fblob\u002Fmain\u002Ftdd\u002Ftdd-workflows-tdd-cycle\u002FSKILL.md",[119],{"categoryNo":73,"categoryName":74,"taxonomyType":20,"taxonomyTypeDesc":21},[76,77,121,122,123,79,81,82,31,83],"cycle","tdd cycle","tdd workflows tdd cycle",{"skillNo":125,"name":126,"nameZh":6,"description":127,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":128,"categories":129,"keywords":139,"publishedAt":39},"01M6J71ZC3W0FE9CKQGYRCSRCA","tdd-workflow","Use this skill when writing new features, fixing bugs, or refactoring code. Enforces test-driven development with 80%+ coverage including unit, integration, and E2E tests.","https:\u002F\u002Fgithub.com\u002Fcaobingsheng\u002Fskills\u002Fblob\u002Fmain\u002Ftdd\u002Ftdd-workflow\u002FSKILL.md",[130,133,134],{"categoryNo":131,"categoryName":132,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000008","测试与质量",{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},{"categoryNo":135,"categoryName":136,"taxonomyType":137,"taxonomyTypeDesc":138},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[140,141,76,142,143,31,144,145,82,146,147,97,148,149,150,151,111,152,153],"tdd workflow","workflow","writing","test","features","bugs","unit","driven","coverage","refactoring","e2e","integration","development","e2e tests",{"skillNo":155,"name":156,"nameZh":6,"description":157,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":158,"categories":159,"keywords":162,"publishedAt":39},"01M6J71VTWV5GP7AQ08G4CDWFG","tdd-orchestrator","Master TDD orchestrator specializing in red-green-refactor discipline, multi-agent workflow coordination, and comprehensive test-driven development practices.","https:\u002F\u002Fgithub.com\u002Fcaobingsheng\u002Fskills\u002Fblob\u002Fmain\u002Ftdd\u002Ftdd-orchestrator\u002FSKILL.md",[160,161],{"categoryNo":131,"categoryName":132,"taxonomyType":20,"taxonomyTypeDesc":21},{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},[76,163,164,165,83,166,91,147,107,167,81,168,169,170,171,78,152,143,141],"orchestrator","tdd orchestrator","master","multi","agent workflow","red-green-refactor","discipline","multi-agent","coordination"]