[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6CF5VBWAA1MBPJD8QH0M1MX":3,"skill-same:01M6CF5VBWAA1MBPJD8QH0M1MX":66},{"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":28,"linkOnly":29,"markdownContent":30,"markdownBody":31,"frontMatter":32,"refName":38,"commitSha":39,"skillDirectory":40,"forksCount":41,"repositoryHtmlUrl":42,"repositoryHomepageUrl":6,"ownerHtmlUrl":43,"ownerBlogUrl":6,"ownerDescription":44,"updatedAt":45,"install":46,"resources":59},"01M6CF5VBWAA1MBPJD8QH0M1MX","peer",null,"Add another agent as a peer.","usurobor\u002Fcnos","usurobor","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F182342826?v=4","01M6CEXJCRMYD8HB2315FGB1Q8","Peter Lisovin","01M6CEXJH2RW04GQ2SNXY40F5S",9,"Apache-2.0","https:\u002F\u002Fgithub.com\u002Fusurobor\u002Fcnos\u002Fblob\u002Fmain\u002Fsrc\u002Fpackages\u002Fcnos.core\u002Fskills\u002Fops\u002Fpeer\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[5,24,25,26,27],"sync","connect","first","how","2026-11-10 10:12:30",false,"---\nname: peer\ndescription: Add another agent as a peer.\ngoverning_question: How does the agent register a new peer so handshake, addressing, and sync paths are stable from the first interaction?\ntriggers: [peer, handshake, peering, sync, connect]\nscope: task-local\n---\n\n# Peer\n\nAdd another agent as a peer.\n\n## TERMS\n\n1. URL where you found the peer\n2. `state\u002Fpeers.md` exists\n\n## INPUTS\n\n- `url`: discovery URL (required)\n- `hub`: GitHub hub URL (optional)\n- `star`: star their repo? (default: true)\n- `note`: optional note\n\n## EFFECTS\n\n1. Discover hub from URL if needed\n2. Add to `state\u002Fpeers.md`\n3. Star repo if enabled\n4. Commit and push\n\n## peers.md Format\n\n```yaml\n- name: agent-name\n  hub: https:\u002F\u002Fgithub.com\u002Fowner\u002Fcn-name\n  kind: agent\n  met: https:\u002F\u002Ftwitter.com\u002Fsomeone\n  note: optional\n  peered: YYYY-MM-DD\n```\n\n## Examples\n\nDirect:\n```\nPeer https:\u002F\u002Fgithub.com\u002Fowner\u002Fcn-\u003Cpeer>\n```\n\nFrom Twitter:\n```\nPeer https:\u002F\u002Ftwitter.com\u002Fsome_agent\n→ discovers hub, confirms with human\n```\n\n## Unpeering\n\nRemove entry from `state\u002Fpeers.md`, optionally `gh repo unstar`.\n","# Peer\n\nAdd another agent as a peer.\n\n## TERMS\n\n1. URL where you found the peer\n2. `state\u002Fpeers.md` exists\n\n## INPUTS\n\n- `url`: discovery URL (required)\n- `hub`: GitHub hub URL (optional)\n- `star`: star their repo? (default: true)\n- `note`: optional note\n\n## EFFECTS\n\n1. Discover hub from URL if needed\n2. Add to `state\u002Fpeers.md`\n3. Star repo if enabled\n4. Commit and push\n\n## peers.md Format\n\n```yaml\n- name: agent-name\n  hub: https:\u002F\u002Fgithub.com\u002Fowner\u002Fcn-name\n  kind: agent\n  met: https:\u002F\u002Ftwitter.com\u002Fsomeone\n  note: optional\n  peered: YYYY-MM-DD\n```\n\n## Examples\n\nDirect:\n```\nPeer https:\u002F\u002Fgithub.com\u002Fowner\u002Fcn-\u003Cpeer>\n```\n\nFrom Twitter:\n```\nPeer https:\u002F\u002Ftwitter.com\u002Fsome_agent\n→ discovers hub, confirms with human\n```\n\n## Unpeering\n\nRemove entry from `state\u002Fpeers.md`, optionally `gh repo unstar`.\n",{"name":5,"scope":33,"triggers":34,"description":7,"governing_question":37},"task-local",[5,35,36,24,25],"handshake","peering","How does the agent register a new peer so handshake, addressing, and sync paths are stable from the first interaction?","main","fb527e6c4bfb75c71fa75d6471b3aa3da32106d4","src\u002Fpackages\u002Fcnos.core\u002Fskills\u002Fops\u002Fpeer",0,"https:\u002F\u002Fgithub.com\u002Fusurobor\u002Fcnos","https:\u002F\u002Fgithub.com\u002Fusurobor","Coherence engineer. Building git-CN.","2026-11-07 14:25:44",{"source":8,"skillName":5,"commands":47,"prompt":57,"zipAvailable":58},[48,51,54],{"tool":49,"command":50},"npx","npx skills add usurobor\u002Fcnos --skill peer",{"tool":52,"command":53},"bunx","bunx skills add usurobor\u002Fcnos --skill peer",{"tool":55,"command":56},"pnpm","pnpm dlx skills add usurobor\u002Fcnos --skill peer","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fusurobor\u002Fcnos\u002Fblob\u002Fmain\u002Fsrc\u002Fpackages\u002Fcnos.core\u002Fskills\u002Fops\u002Fpeer\u002FSKILL.md",true,[60],{"path":61,"resourceType":62,"resourceTypeDesc":63,"sizeBytes":64,"sourceHtmlUrl":65},"kata.md","REFERENCE","参考文档",1322,"https:\u002F\u002Fgithub.com\u002Fusurobor\u002Fcnos\u002Fblob\u002Fmain\u002Fsrc\u002Fpackages\u002Fcnos.core\u002Fskills\u002Fops\u002Fpeer\u002Fkata.md",[67,85,101,127,144,165],{"skillNo":68,"name":69,"nameZh":6,"description":70,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":71,"categories":72,"keywords":73,"publishedAt":28},"01M6CF8RWQPM0VXZG06XMR0FFX","issues\u002Ftriage","Issue triage doctrine pointer. Use when classifying a new issue, deciding dispatch eligibility, or deciding whether to close\u002Fsupersede\u002Fdefer.","https:\u002F\u002Fgithub.com\u002Fusurobor\u002Fcnos\u002Fblob\u002Fmain\u002Fsrc\u002Fpackages\u002Fcnos.issues\u002Fskills\u002Ftriage\u002FSKILL.md",[],[74,75,76,77,78,27,79,80,81,82,83,84],"triage","issues","issues triage","issue triage","SET","decision","public","use","dispatch","issue","doctrine",{"skillNo":86,"name":87,"nameZh":6,"description":88,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":89,"categories":90,"keywords":91,"publishedAt":28},"01M6CF8PJ812DD4APZ3WE8X67B","issues\u002Ftaxonomy","Issue label taxonomy pointer. Use when classifying an issue's kind\u002Farea\u002Fpriority\u002Feffort\u002Fstatus\u002Fprotocol\u002Fdispatch labels, or when the board needs to interpret them.","https:\u002F\u002Fgithub.com\u002Fusurobor\u002Fcnos\u002Fblob\u002Fmain\u002Fsrc\u002Fpackages\u002Fcnos.issues\u002Fskills\u002Ftaxonomy\u002FSKILL.md",[],[75,92,93,94,95,96,78,97,80,98,81,82,99,83,100],"taxonomy","issues taxonomy","github","status","protocol","open","board","github issue","issue labels",{"skillNo":102,"name":103,"nameZh":6,"description":104,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":105,"categories":106,"keywords":115,"publishedAt":28},"01M6CF8KBMZ4D0CDJQ3PF1YVTP","issues\u002Fmap","Issue-board (Issue Pivot) generation domain. Use when reasoning about `cn issues map`'s fetch, taxonomy-parse, effort-computation, and render pipeline, or about the board's JSON\u002FHTML output contract.","https:\u002F\u002Fgithub.com\u002Fusurobor\u002Fcnos\u002Fblob\u002Fmain\u002Fsrc\u002Fpackages\u002Fcnos.issues\u002Fskills\u002Fmap\u002FSKILL.md",[107,110],{"categoryNo":108,"categoryName":109,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000009","前端开发",{"categoryNo":111,"categoryName":112,"taxonomyType":113,"taxonomyTypeDesc":114},"01JBSEEDCAT000000000000037","律师与法务","PROFESSION","适用职业",[75,116,94,117,118,119,78,120,92,97,27,121,122,98,123,124,125,126,81,83],"issues map","reasoning","data","pipeline","api","json","README","edit","interactive","fetch","generated",{"skillNo":128,"name":75,"nameZh":6,"description":129,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":130,"categories":131,"keywords":132,"publishedAt":28},"01M6CF8CZQH7G7B7RZPANQWR4G","cnos.issues package entrypoint. Use when reasoning about issue taxonomy, the Issue Pivot \u002F issue-board (`cn issues map`), the read-only CDS issue-state evaluator (`cn issues fsm evaluate`), or the current command-dispatch disposition of issue tooling.","https:\u002F\u002Fgithub.com\u002Fusurobor\u002Fcnos\u002Fblob\u002Fmain\u002Fsrc\u002Fpackages\u002Fcnos.issues\u002FSKILL.md",[],[75,94,133,134,135,136,137,138,139,92,97,27,79,140,122,141,81,142,82,143],"pr","current state","run","artifacts","state","package","boundary","branch","command","only","cds",{"skillNo":145,"name":146,"nameZh":6,"description":147,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":148,"categories":149,"keywords":150,"publishedAt":28},"01M6CF896XKSRQVB1CSHY8GSXB","receipt-stream","Cross-cycle receipt-stream doctrine for protocol-iteration. Use when γ closes a cycle and writes the per-cycle iteration artifact (`cdd-iteration.md`), when γ updates the cross-cycle aggregator at `.cdd\u002Fiterations\u002FINDEX.md`, when ε reads the receipt stream across cycles to surface protocol-gap patterns, when a finding's disposition lands a cross-repo patch and the cross-repo trace bundle attaches, or when a courtesy empty-findings stub is written for a `protocol_gap_count == 0` cycle.","https:\u002F\u002Fgithub.com\u002Fusurobor\u002Fcnos\u002Fblob\u002Fmain\u002Fsrc\u002Fpackages\u002Fcnos.handoff\u002Fskills\u002Fhandoff\u002Freceipt-stream\u002FSKILL.md",[],[151,152,136,96,153,27,154,155,156,80,157,158,159,160,81,161,162,163,164,84],"receipt stream","handoff","index","learning","format","trace","repo","closeout","read","channel","embedded","patch","shape","cdd",{"skillNo":166,"name":167,"nameZh":6,"description":168,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":169,"categories":170,"keywords":171,"publishedAt":28},"01M6CF84VCBME6RK8V6HAVDM8Z","mid-flight","Mid-flight γ→in-flight-α rescue channel. Use when γ needs to change a load-bearing fact (pinned axis, scope, AC, blocker) after α has begun coding, when γ edits the cycle's GitHub issue body mid-cycle, or when a spec change lands on origin\u002Fmain while α\u002Fβ polling sessions are in-flight.","https:\u002F\u002Fgithub.com\u002Fusurobor\u002Fcnos\u002Fblob\u002Fmain\u002Fsrc\u002Fpackages\u002Fcnos.handoff\u002Fskills\u002Fhandoff\u002Fmid-flight\u002FSKILL.md",[],[172,94,173,174,175,176,27,177,178,140,157,159,81,142,82,179,99,180,181,182],"mid flight","change","sessions","file","cache","pin","coordination","up","Legacy","gamma","artifact channel"]