[{"data":1,"prerenderedAt":491},["ShallowReactive",2],{"navigation_docs":3,"trending-repo-mvschwarz\u002Fopenrig":188},[4,50,82,99,135,157,173,178,183],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":6},"Getting Started",false,"\u002Fgetting-started","1.getting-started",[10,15,20,25,30,35,40,45],{"title":11,"path":12,"stem":13,"icon":14},"Introduction","\u002Fgetting-started\u002Fintroduction","1.getting-started\u002F2.introduction","i-lucide-house",{"title":16,"path":17,"stem":18,"icon":19},"Installation","\u002Fgetting-started\u002Finstallation","1.getting-started\u002F3.installation","i-lucide-download",{"title":21,"path":22,"stem":23,"icon":24},"Configuration","\u002Fgetting-started\u002Fconfiguration","1.getting-started\u002F4.configuration","i-lucide-settings",{"title":26,"path":27,"stem":28,"icon":29},"Supported Formats","\u002Fgetting-started\u002Fsupported-formats","1.getting-started\u002F5.supported-formats","i-lucide-file-code",{"title":31,"path":32,"stem":33,"icon":34},"Agent Skill","\u002Fgetting-started\u002Fagent-skill","1.getting-started\u002F6.agent-skill","i-lucide-cpu",{"title":36,"path":37,"stem":38,"icon":39},"Changelog","\u002Fgetting-started\u002Fchangelog","1.getting-started\u002F7.changelog","i-lucide-scroll-text",{"title":41,"path":42,"stem":43,"icon":44},"Migrating from v4 to v5","\u002Fgetting-started\u002Fmigration","1.getting-started\u002F8.migration","i-lucide-arrow-right-left",{"title":46,"path":47,"stem":48,"icon":49},"jscpd v4 (TypeScript)","\u002Fgetting-started\u002Fv4","1.getting-started\u002F9.v4","i-simple-icons-typescript",{"title":51,"path":52,"stem":53,"children":54,"icon":6},"Guides","\u002Fguides","2.guides\u002F1.index",[55,57,62,67,72,77],{"title":51,"path":52,"stem":53,"icon":56},"i-lucide-book-open",{"title":58,"path":59,"stem":60,"icon":61},"Types of Code Clones","\u002Fguides\u002Fclone-types","2.guides\u002F2.clone-types","i-lucide-copy",{"title":63,"path":64,"stem":65,"icon":66},"How Detection Works","\u002Fguides\u002Fhow-detection-works","2.guides\u002F3.how-detection-works","i-lucide-scan-search",{"title":68,"path":69,"stem":70,"icon":71},"Duplication Trend over Git History","\u002Fguides\u002Fhistory","2.guides\u002F4.history","i-lucide-chart-no-axes-combined",{"title":73,"path":74,"stem":75,"icon":76},"Project Dashboard","\u002Fguides\u002Fdashboard","2.guides\u002F5.dashboard","i-lucide-layout-dashboard",{"title":78,"path":79,"stem":80,"icon":81},"Project Health Score","\u002Fguides\u002Fhealth","2.guides\u002F6.health","i-lucide-heart-pulse",{"title":83,"path":84,"stem":85,"children":86,"icon":6},"CI & Hooks","\u002Fci-and-hooks","3.ci-and-hooks\u002F1.index",[87,89,94],{"title":83,"path":84,"stem":85,"icon":88},"i-lucide-git-pull-request",{"title":90,"path":91,"stem":92,"icon":93},"Use jscpd in CI","\u002Fci-and-hooks\u002Fci","3.ci-and-hooks\u002F2.ci","i-lucide-github",{"title":95,"path":96,"stem":97,"icon":98},"Use jscpd in Pre-Commit Hook","\u002Fci-and-hooks\u002Fpre-commit","3.ci-and-hooks\u002F3.pre-commit","i-lucide-git-commit",{"title":100,"path":101,"stem":102,"children":103,"icon":105},"Reporters","\u002Freporters","4.reporters\u002F1.index",[104,106,110,115,120,125,130],{"title":100,"path":101,"stem":102,"icon":105},"i-lucide-file-chart-column",{"title":107,"path":108,"stem":109,"icon":29},"HTML Reporter","\u002Freporters\u002Fhtml","4.reporters\u002F2.html",{"title":111,"path":112,"stem":113,"icon":114},"JSON Reporter","\u002Freporters\u002Fjson","4.reporters\u002F3.json","i-lucide-braces",{"title":116,"path":117,"stem":118,"icon":119},"Badge Reporter","\u002Freporters\u002Fbadge","4.reporters\u002F4.badge","i-lucide-award",{"title":121,"path":122,"stem":123,"icon":124},"SARIF Reporter","\u002Freporters\u002Fsarif","4.reporters\u002F5.sarif","i-lucide-shield-check",{"title":126,"path":127,"stem":128,"icon":129},"CodeClimate \u002F GitLab Reporter","\u002Freporters\u002Fcodeclimate","4.reporters\u002F6.codeclimate","i-lucide-flag-triangle-right",{"title":131,"path":132,"stem":133,"icon":134},"OpenMetrics Reporter","\u002Freporters\u002Fopenmetrics","4.reporters\u002F7.openmetrics","i-lucide-activity",{"title":136,"path":137,"stem":138,"children":139,"icon":6},"Benchmarks","\u002Fbenchmarks","5.benchmarks\u002F1.index",[140,142,147,152],{"title":136,"path":137,"stem":138,"icon":141},"i-lucide-gauge",{"title":143,"path":144,"stem":145,"icon":146},"Detection Speed","\u002Fbenchmarks\u002Fdetection-speed","5.benchmarks\u002F2.detection-speed","i-lucide-zap",{"title":148,"path":149,"stem":150,"icon":151},"Multi-Format Detection","\u002Fbenchmarks\u002Fcross-format","5.benchmarks\u002F3.cross-format","i-lucide-layers",{"title":153,"path":154,"stem":155,"icon":156},"AI Token Efficiency","\u002Fbenchmarks\u002Fai-token-efficiency","5.benchmarks\u002F4.ai-token-efficiency","i-lucide-sparkles",{"title":158,"path":159,"stem":160,"children":161,"icon":163},"API","\u002Fapi","6.api\u002F1.index",[162,164,169],{"title":158,"path":159,"stem":160,"icon":163},"i-lucide-code",{"title":165,"path":166,"stem":167,"icon":168},"Rust Crates (v5)","\u002Fapi\u002Fcore","6.api\u002F2.core","i-lucide-box",{"title":170,"path":171,"stem":172,"icon":168},"MCP Server","\u002Fapi\u002Fmcp-server","6.api\u002F4.mcp-server",{"title":174,"path":175,"stem":176,"icon":177},"Trending","\u002Ftrending","7.trending","i-lucide-trending-up",{"title":179,"path":180,"stem":181,"icon":182},"Research","\u002Fresearch","8.research","i-lucide-graduation-cap",{"title":184,"path":185,"stem":186,"icon":187},"Articles","\u002Farticles","9.articles","i-lucide-newspaper",{"name":189,"url":190,"appearances":191,"latest":205},"mvschwarz\u002Fopenrig","https:\u002F\u002Fgithub.com\u002Fmvschwarz\u002Fopenrig",[192],{"date":193,"rank":194,"stars":195,"starsToday":196,"headSha":197,"sources":198,"lines":199,"clones":200,"duplicatedLines":201,"percentage":202,"healthScore":203,"healthGrade":204},"2026-09-28",5,1139,114,"ae957e59577bd05a715594fa9c589c2e883b2d19",3012,628234,5220,67039,10.67,44.1,"D",{"date":193,"generatedAt":206,"name":189,"url":190,"description":207,"language":208,"stars":195,"starsToday":196,"defaultBranch":209,"headSha":197,"durationMs":210,"total":211,"formats":215,"topClones":284,"health":365,"complexity":396,"deadCode":443},"2026-09-28T05:32:46.532Z","Multi-agent harness that runs Claude Code and Codex together as one system","TypeScript","main",3467,{"sources":198,"lines":199,"tokens":212,"clones":200,"duplicatedLines":201,"duplicatedTokens":213,"percentage":202,"percentageTokens":214},4682572,506436,10.82,[216,223,230,237,244,251,258,264,271,277],{"format":217,"sources":218,"lines":219,"clones":220,"duplicatedLines":221,"percentage":222},"typescript",1916,478371,4511,49539,10.36,{"format":224,"sources":225,"lines":226,"clones":227,"duplicatedLines":228,"percentage":229},"tsx",342,70293,413,4631,6.59,{"format":231,"sources":232,"lines":233,"clones":234,"duplicatedLines":235,"percentage":236},"markdown",325,46529,94,7789,16.74,{"format":238,"sources":239,"lines":240,"clones":241,"duplicatedLines":242,"percentage":243},"yaml",191,6256,65,1275,20.38,{"format":245,"sources":246,"lines":247,"clones":248,"duplicatedLines":249,"percentage":250},"txt",18,2145,58,855,39.86,{"format":252,"sources":253,"lines":254,"clones":255,"duplicatedLines":256,"percentage":257},"javascript",87,16085,56,2282,14.19,{"format":259,"sources":260,"lines":261,"clones":262,"duplicatedLines":227,"percentage":263},"bash",66,3607,9,11.45,{"format":265,"sources":266,"lines":267,"clones":268,"duplicatedLines":269,"percentage":270},"text",31,507,7,120,23.67,{"format":272,"sources":273,"lines":274,"clones":275,"duplicatedLines":255,"percentage":276},"dot",6,112,3,50,{"format":278,"sources":279,"lines":280,"clones":281,"duplicatedLines":282,"percentage":283},"json",21,1646,2,67,4.07,[285,293,302,310,319,327,334,343,347,356],{"format":252,"lines":286,"tokens":287,"firstFile":288,"secondFile":291},1417,11825,{"name":289,"start":275,"end":290},"packages\u002Fdaemon\u002Fspecs\u002Fagents\u002Fshared\u002Fskills\u002Fcore\u002Fopenrig-upgrade\u002Fscripts\u002Fmigrate-telemetry-state-0.5.9.mjs",1419,{"name":292,"start":275,"end":290},"skills\u002F_canonical\u002Fcore\u002Fopenrig-upgrade\u002Fscripts\u002Fmigrate-telemetry-state-0.5.9.mjs",{"format":231,"lines":294,"tokens":295,"firstFile":296,"secondFile":300},463,5706,{"name":297,"start":298,"end":299},"packages\u002Fdaemon\u002Fspecs\u002Fagents\u002Fshared\u002Fskills\u002Fprocess\u002Fcontext-engineering\u002FSKILL.md:markdown",17,479,{"name":301,"start":298,"end":299},"skills\u002F_canonical\u002Fprocess\u002Fcontext-engineering\u002FSKILL.md:markdown",{"format":231,"lines":303,"tokens":304,"firstFile":305,"secondFile":308},543,5694,{"name":306,"start":307,"end":303},"packages\u002Fdaemon\u002Fspecs\u002Fagents\u002Fshared\u002Fskills\u002Fcore\u002Fopenrig-software-factory\u002Freferences\u002Fworked-example.md:markdown",1,{"name":309,"start":307,"end":303},"skills\u002F_canonical\u002Fcore\u002Fopenrig-software-factory\u002Freferences\u002Fworked-example.md:markdown",{"format":231,"lines":311,"tokens":312,"firstFile":313,"secondFile":317},345,3762,{"name":314,"start":315,"end":316},"packages\u002Fdaemon\u002Fspecs\u002Fagents\u002Fshared\u002Fskills\u002Fcore\u002Fopenrig-architect\u002FSKILL.md:markdown",27,371,{"name":318,"start":315,"end":316},"skills\u002F_canonical\u002Fcore\u002Fopenrig-architect\u002FSKILL.md:markdown",{"format":231,"lines":320,"tokens":321,"firstFile":322,"secondFile":325},264,3472,{"name":323,"start":273,"end":324},"packages\u002Fdaemon\u002Fspecs\u002Fagents\u002Fshared\u002Fskills\u002Fpods\u002Forchestration-team\u002FSKILL.md:markdown",269,{"name":326,"start":273,"end":324},"skills\u002F_canonical\u002Fpods\u002Forchestration-team\u002FSKILL.md:markdown",{"format":217,"lines":328,"tokens":329,"firstFile":330,"secondFile":332},533,3133,{"name":331,"start":307,"end":328},"packages\u002Fcli\u002Fsrc\u002Flib\u002Fscope\u002Fscope-audit.ts",{"name":333,"start":307,"end":328},"packages\u002Fdaemon\u002Fsrc\u002Fdomain\u002Fscope\u002Fscope-audit.ts",{"format":231,"lines":335,"tokens":336,"firstFile":337,"secondFile":341},109,1864,{"name":338,"start":339,"end":340},"packages\u002Fdaemon\u002Fassets\u002Fplugins\u002Fopenrig-core\u002Fskills\u002Fopenrig-skills\u002FSKILL.md:markdown",10,118,{"name":342,"start":339,"end":340},"packages\u002Fdaemon\u002Fspecs\u002Fagents\u002Fshared\u002Fskills\u002Fcore\u002Fopenrig-skills\u002FSKILL.md:markdown",{"format":231,"lines":335,"tokens":336,"firstFile":344,"secondFile":345},{"name":338,"start":339,"end":340},{"name":346,"start":339,"end":340},"skills\u002F_canonical\u002Fcore\u002Fopenrig-skills\u002FSKILL.md:markdown",{"format":231,"lines":348,"tokens":349,"firstFile":350,"secondFile":354},214,1840,{"name":351,"start":352,"end":353},"packages\u002Fdaemon\u002Fspecs\u002Fagents\u002Fshared\u002Fskills\u002Fprocess\u002Fdogfood\u002FSKILL.md:markdown",12,225,{"name":355,"start":352,"end":353},"skills\u002F_canonical\u002Fprocess\u002Fdogfood\u002FSKILL.md:markdown",{"format":231,"lines":357,"tokens":358,"firstFile":359,"secondFile":363},291,1800,{"name":360,"start":361,"end":362},"packages\u002Fdaemon\u002Fspecs\u002Fagents\u002Fshared\u002Fskills\u002Fprocess\u002Fsystematic-debugging\u002FSKILL.md:markdown",11,301,{"name":364,"start":361,"end":362},"skills\u002F_canonical\u002Fprocess\u002Fsystematic-debugging\u002FSKILL.md:markdown",{"score":203,"grade":204,"size":366,"dimensions":370},{"lines":367,"files":368,"class":369},567633,2360,"L",[371,384,390],{"id":372,"source":373,"value":374,"adjusted":374,"lines":375,"halfLife":376,"formats":377,"excluded":380,"weight":307,"score":383},"duplication","jscpd",9.9,56370,8.5,[217,224,252,259,378,379],"python","perl",[381,265,382],"markup","data",44.6,{"id":385,"source":373,"value":386,"adjusted":386,"lines":387,"halfLife":388,"weight":307,"score":389},"dead-code",9.3,52867,7.5,42.4,{"id":391,"source":373,"value":392,"adjusted":393,"lines":394,"halfLife":276,"weight":307,"score":395},"complexity",56.9,56.7,322848,45.5,{"total":397,"mean":398,"files":399},102843,43.6,[400,405,410,415,418,419,424,429,434,439],{"path":401,"complexity":402,"lines":403,"bytes":404},"packages\u002Ftui\u002Fsrc\u002Frender.ts",817,1790,101946,{"path":406,"complexity":407,"lines":408,"bytes":409},"packages\u002Fdaemon\u002Ftest\u002Frestore-orchestrator.test.ts",594,3614,175435,{"path":411,"complexity":412,"lines":413,"bytes":414},"packages\u002Fdaemon\u002Fsrc\u002Fdomain\u002Fqueue-repository.ts",582,3555,171513,{"path":289,"complexity":416,"lines":290,"bytes":417},476,61540,{"path":292,"complexity":416,"lines":290,"bytes":417},{"path":420,"complexity":421,"lines":422,"bytes":423},"packages\u002Fdaemon\u002Fsrc\u002Fdomain\u002Frigspec-instantiator.ts",459,2507,110829,{"path":425,"complexity":426,"lines":427,"bytes":428},"packages\u002Fdaemon\u002Fsrc\u002Fdomain\u002Frigspec-schema.ts",452,1312,57366,{"path":430,"complexity":431,"lines":432,"bytes":433},"packages\u002Fcli\u002Fsrc\u002Fcommands\u002Fps.ts",428,1669,73885,{"path":435,"complexity":436,"lines":437,"bytes":438},"packages\u002Fcli\u002Fsrc\u002Fcommands\u002Fscope.ts",416,2085,93867,{"path":440,"complexity":436,"lines":441,"bytes":442},"packages\u002Fdaemon\u002Fsrc\u002Fdomain\u002Fexecution-view.ts",1205,55045,{"percentage":386,"findings":444,"files":445,"byCategory":446,"largest":459},431,2463,[447,450,453,456],{"category":448,"count":449},"unused-file",310,{"category":451,"count":452},"unused-export",48,{"category":454,"count":455},"unused-symbol",19,{"category":457,"count":458},"unused-import",54,[460,464,467,470,473,476,479,482,485,488],{"category":448,"path":461,"name":462,"line":307,"lines":463},"packages\u002Fui\u002Fsrc\u002Fcomponents\u002Fproject\u002FScopePages.tsx","",1382,{"category":448,"path":465,"name":462,"line":307,"lines":466},"packages\u002Fui\u002Fsrc\u002Fcomponents\u002FLiveNodeDetails.tsx",743,{"category":448,"path":468,"name":462,"line":307,"lines":469},"packages\u002Fui\u002Fsrc\u002Fcomponents\u002FLibraryReview.tsx",725,{"category":448,"path":471,"name":462,"line":307,"lines":472},"packages\u002Fui\u002Fsrc\u002Fcomponents\u002FAppShell.tsx",721,{"category":448,"path":474,"name":462,"line":307,"lines":475},"packages\u002Fui\u002Fsrc\u002Fcomponents\u002Ffeed\u002Fcards\u002Fstorytelling-cards.tsx",718,{"category":448,"path":477,"name":462,"line":307,"lines":478},"packages\u002Fui\u002Fsrc\u002Fcomponents\u002Flab\u002FVellumBackgroundLab.tsx",703,{"category":448,"path":480,"name":462,"line":307,"lines":481},"packages\u002Fui\u002Fsrc\u002Fcomponents\u002Ffor-you\u002FFeedCard.tsx",655,{"category":448,"path":483,"name":462,"line":307,"lines":484},"packages\u002Fui\u002Fsrc\u002Froutes.tsx",605,{"category":448,"path":486,"name":462,"line":307,"lines":487},"packages\u002Fui\u002Fsrc\u002Fcomponents\u002FRigGraph.tsx",562,{"category":448,"path":489,"name":462,"line":307,"lines":490},"packages\u002Fui\u002Fsrc\u002Fcomponents\u002Ffiles\u002FFilesWorkspace.tsx",557,1790573646260]