[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6C1G5XMSWSJPATJY1DET7VB":3,"skill-same:01M6C1G5XMSWSJPATJY1DET7VB":86},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":23,"publishedAt":47,"linkOnly":48,"markdownContent":49,"markdownBody":50,"frontMatter":51,"refName":62,"commitSha":63,"skillDirectory":64,"forksCount":65,"repositoryHtmlUrl":66,"repositoryHomepageUrl":67,"ownerHtmlUrl":68,"ownerBlogUrl":69,"ownerDescription":70,"updatedAt":71,"install":72,"resources":85},"01M6C1G5XMSWSJPATJY1DET7VB","compound-memory",null,"Orchestrate governed persistent project memory across immutable evidence, llm-wiki, line-memory, reviewed session candidates, generated outputs, and bounded context packs.","jmagly\u002Faiwg","jmagly","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F1159087?v=4","01M6C10AK8N2WCSQN11FYGTJWN","Joseph Magly","01M6C10AQ8A2RMED1Y1BSVY7NF",229,"MIT","https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Fagentic\u002Fcode\u002Faddons\u002Fcompound-memory\u002Fskills\u002Fcompound-memory\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],"memory","compound memory","compound","outputs","review","bounded","project memory","persistent memory","context pack","sources","line","project","across","maintain","evidence","use","session","generated","context","capture","wiki","immutable","orchestrate","2026-11-10 10:12:30",false,"---\nnamespace: aiwg\nname: compound-memory\nplatforms: [all]\ndescription: Orchestrate governed persistent project memory across immutable evidence, llm-wiki, line-memory, reviewed session candidates, generated outputs, and bounded context packs.\ntriggers:\n  - use compound project memory\n  - ingest sources into persistent memory\n  - review memory candidates\n  - maintain line memory and wiki\n  - build a memory context pack\n  - capture an output into memory\n---\n\n# Compound Memory\n\nUse this driver for the persistent compounding-memory pattern. It coordinates\nexisting capabilities; it does not replace their storage, review, indexing, or\npromotion mechanics.\n\nStart with readiness:\n\n```bash\naiwg compound-memory status --json\n```\n\n## Governed workflows\n\n1. **Ingest** — preserve the source unchanged, calculate its identity and\n   digest, then route long-form material through `memory-ingest` and llm-wiki.\n   Route session transcripts through `aiwg sessions import` and `extract`.\n2. **Retrieve\u002Fuse** — query llm-wiki or the artifact index for linked detail;\n   use `aiwg compound-memory context \u003Ctask> --budget \u003Ccharacters> --json` to\n   merge relevant line facts and wiki evidence. Add `--no-touch` for inspection.\n   Never inject the complete stores into startup context.\n3. **Write\u002Fcapture output** — register the output and its source\u002Fcontext-pack\n   lineage before proposing any extracted facts as session candidates. Run\n   `aiwg compound-memory capture-output \u003Cfile> ... --json` first, review the\n   immutable digest and minimized references, then repeat with\n   `--confirm --operation-id \u003Cpreview-operation-id>`. This creates registration\n   and index receipts only; it never promotes knowledge.\n4. **Manage** — use exact-version candidate review and preview promotion to the\n   declared `memory` or `line-memory` consumer. One reviewed candidate may\n   produce independent receipts for both consumers.\n5. **Review\u002Fupdate** — independently accept, reject, or defer proposed facts.\n   Start from `aiwg compound-memory review --limit 50 --json`, then inspect and\n   decide through the exact-version sessions commands. Workspace identity\n   changes require a separate explicit review gate.\n   For canonical context, run `aiwg compound-memory update \u003Ctarget> \u003Ckey>\n   \u003Cvalue> --source-ref \u003Cref> --reviewer \u003Cid> --reason \u003Creason> --json`, review\n   its diff\u002Fconflicts, then repeat with the exact operation ID and `--confirm`.\n   This never refreshes provider adapters.\n6. **Maintain** — preview pruning, deduplication, contradiction repair, orphan\n   repair, and index refresh. Confirm only the reviewed mutations. Preserve\n   lifecycle tombstones and source-purge dependent dispositions. The compound\n   command's confirmation may replay pending output registrations; all other\n   actions remain delegated to their owning review workflows.\n\nUntil the compound-memory lifecycle ADR is accepted, do not invent a new\nautomatic promotion path. Use the existing commands and receipts named above,\nand treat generated\u002Fmodel output as untrusted proposed knowledge rather than\nground truth.\n\n## References\n\n- @$AIWG_ROOT\u002Fagentic\u002Fcode\u002Faddons\u002Fcompound-memory\u002Fdocs\u002Foverview.md\n- @$AIWG_ROOT\u002Fagentic\u002Fcode\u002Faddons\u002Fline-memory\u002Fskills\u002Fline-memory\u002FSKILL.md\n- @$AIWG_ROOT\u002Fagentic\u002Fcode\u002Faddons\u002Fllm-wiki\u002Fskills\u002Fllm-wiki\u002FSKILL.md\n- @$AIWG_ROOT\u002Fagentic\u002Fcode\u002Faddons\u002Fsemantic-memory\u002Fskills\u002Fmemory-ingest\u002FSKILL.md\n","# Compound Memory\n\nUse this driver for the persistent compounding-memory pattern. It coordinates\nexisting capabilities; it does not replace their storage, review, indexing, or\npromotion mechanics.\n\nStart with readiness:\n\n```bash\naiwg compound-memory status --json\n```\n\n## Governed workflows\n\n1. **Ingest** — preserve the source unchanged, calculate its identity and\n   digest, then route long-form material through `memory-ingest` and llm-wiki.\n   Route session transcripts through `aiwg sessions import` and `extract`.\n2. **Retrieve\u002Fuse** — query llm-wiki or the artifact index for linked detail;\n   use `aiwg compound-memory context \u003Ctask> --budget \u003Ccharacters> --json` to\n   merge relevant line facts and wiki evidence. Add `--no-touch` for inspection.\n   Never inject the complete stores into startup context.\n3. **Write\u002Fcapture output** — register the output and its source\u002Fcontext-pack\n   lineage before proposing any extracted facts as session candidates. Run\n   `aiwg compound-memory capture-output \u003Cfile> ... --json` first, review the\n   immutable digest and minimized references, then repeat with\n   `--confirm --operation-id \u003Cpreview-operation-id>`. This creates registration\n   and index receipts only; it never promotes knowledge.\n4. **Manage** — use exact-version candidate review and preview promotion to the\n   declared `memory` or `line-memory` consumer. One reviewed candidate may\n   produce independent receipts for both consumers.\n5. **Review\u002Fupdate** — independently accept, reject, or defer proposed facts.\n   Start from `aiwg compound-memory review --limit 50 --json`, then inspect and\n   decide through the exact-version sessions commands. Workspace identity\n   changes require a separate explicit review gate.\n   For canonical context, run `aiwg compound-memory update \u003Ctarget> \u003Ckey>\n   \u003Cvalue> --source-ref \u003Cref> --reviewer \u003Cid> --reason \u003Creason> --json`, review\n   its diff\u002Fconflicts, then repeat with the exact operation ID and `--confirm`.\n   This never refreshes provider adapters.\n6. **Maintain** — preview pruning, deduplication, contradiction repair, orphan\n   repair, and index refresh. Confirm only the reviewed mutations. Preserve\n   lifecycle tombstones and source-purge dependent dispositions. The compound\n   command's confirmation may replay pending output registrations; all other\n   actions remain delegated to their owning review workflows.\n\nUntil the compound-memory lifecycle ADR is accepted, do not invent a new\nautomatic promotion path. Use the existing commands and receipts named above,\nand treat generated\u002Fmodel output as untrusted proposed knowledge rather than\nground truth.\n\n## References\n\n- @$AIWG_ROOT\u002Fagentic\u002Fcode\u002Faddons\u002Fcompound-memory\u002Fdocs\u002Foverview.md\n- @$AIWG_ROOT\u002Fagentic\u002Fcode\u002Faddons\u002Fline-memory\u002Fskills\u002Fline-memory\u002FSKILL.md\n- @$AIWG_ROOT\u002Fagentic\u002Fcode\u002Faddons\u002Fllm-wiki\u002Fskills\u002Fllm-wiki\u002FSKILL.md\n- @$AIWG_ROOT\u002Fagentic\u002Fcode\u002Faddons\u002Fsemantic-memory\u002Fskills\u002Fmemory-ingest\u002FSKILL.md\n",{"name":5,"triggers":52,"namespace":59,"platforms":60,"description":7},[53,54,55,56,57,58],"use compound project memory","ingest sources into persistent memory","review memory candidates","maintain line memory and wiki","build a memory context pack","capture an output into memory","aiwg",[61],"all","main","6754967c344ccb087a8de06972f55a41067b291b","agentic\u002Fcode\u002Faddons\u002Fcompound-memory\u002Fskills\u002Fcompound-memory",36,"https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg","https:\u002F\u002Faiwg.io","https:\u002F\u002Fgithub.com\u002Fjmagly","https:\u002F\u002Fintegrolabs.io","ml\u002Fai, industrial automation, safety\u002Fsecurity, ssi\r\n\r\nmagly.net\r\nintegrolabs.io\r\naiwg.io\r\nfortemi.com\r\npagenary.com\r\nbytecask.com","2026-11-14 02:10:01",{"source":8,"skillName":5,"commands":73,"prompt":83,"zipAvailable":84},[74,77,80],{"tool":75,"command":76},"npx","npx skills add jmagly\u002Faiwg --skill compound-memory",{"tool":78,"command":79},"bunx","bunx skills add jmagly\u002Faiwg --skill compound-memory",{"tool":81,"command":82},"pnpm","pnpm dlx skills add jmagly\u002Faiwg --skill compound-memory","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Fagentic\u002Fcode\u002Faddons\u002Fcompound-memory\u002Fskills\u002Fcompound-memory\u002FSKILL.md",true,[],[87,115,139,145,152,166],{"skillNo":88,"name":89,"nameZh":6,"description":90,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":91,"categories":92,"keywords":94,"publishedAt":47},"01M70QA0BSYJ49EES9V4RE8QH1","host-hardening","Read-only system hardening baseline and plan-first host hardening recommendations for SSH, Docker bind addresses, firewall persistence, datastores, exporters and audit retention.","https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Fagentic\u002Fcode\u002Fplugins\u002Fsecurity-engineering\u002Fskills\u002Fhost-hardening\u002FSKILL.md",[93],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114],"host","host hardening","hardening","read","re","recommendations","remediation","plan","port","verification","Bash","access","only","retention","audit","never","firewall","bind","secrets","request",{"skillNo":116,"name":117,"nameZh":6,"description":118,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":119,"categories":120,"keywords":125,"publishedAt":47},"01M70PNT2Z4HMZPRBTAF6073NN","exposure-analysis","Read-only firewall analysis and effective host exposure reconstruction for Docker published ports, UFW bypass, stale rules, CDN scope, IPv6 asymmetry and external probe allowlists.","https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Fagentic\u002Fcode\u002Fplugins\u002Fforensics\u002Fskills\u002Fexposure-analysis\u002FSKILL.md",[121,124],{"categoryNo":122,"categoryName":123,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000011","运维与部署",{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[126,127,128,98,129,103,130,131,105,132,95,133,107,134,135,110,111,136,137,138],"exposure analysis","analysis","unknown","credentials","collection","ufw","ports","internet","local","scope","reconstruction","operator","write",{"skillNo":140,"name":89,"nameZh":6,"description":90,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":141,"categories":142,"keywords":144,"publishedAt":47},"01M70P8QATMPKA78E4FT5D2TNA","https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Fagentic\u002Fcode\u002Fframeworks\u002Fsecurity-engineering\u002Fskills\u002Fhost-hardening\u002FSKILL.md",[143],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[97,95,96,106,98,114,101,100,109,102,103,104,105,113,107,108,99,110,111,112],{"skillNo":146,"name":117,"nameZh":6,"description":118,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":147,"categories":148,"keywords":151,"publishedAt":47},"01M70NMPVJ5H0JH131P60FW4R8","https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Fagentic\u002Fcode\u002Fframeworks\u002Fforensics-complete\u002Fskills\u002Fexposure-analysis\u002FSKILL.md",[149,150],{"categoryNo":122,"categoryName":123,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[127,126,110,129,103,130,105,128,95,133,107,134,135,98,111,132,131,136,137,138],{"skillNo":153,"name":154,"nameZh":6,"description":155,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":156,"categories":157,"keywords":159,"publishedAt":47},"01M6CB4DDR0B4NNCFK7ZK7449H","fixture-skill","Exercise rule delivery.","https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Ftest\u002Ffixtures\u002Frule-delivery\u002Fskills\u002Ffixture-skill\u002FSKILL.md",[158],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[160,161,162,163,164,165],"fixture skill","fixture","rule","delivery","true","exercise",{"skillNo":167,"name":168,"nameZh":6,"description":169,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":170,"categories":171,"keywords":173,"publishedAt":47},"01M6CB4AVK1W76MFMPP0JP32CJ","pi-local","Pi-local duplicate-precedence fixture.","https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Ftest\u002Ffixtures\u002Fproviders\u002Fpi\u002Fproject\u002F.pi\u002Fskills\u002Fpi-local\u002FSKILL.md",[172],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[174,175,134,176,161],"pi","pi local","duplicate"]