{"schema_version":"2","scorer_version":"0.1.0","scoring_version":"prov-4+qual-2+sec-2","generated_at":"2026-11-14T00:00:59.649632Z","repo":{"ref":{"host":"github.com","owner":"amElnagdy","name":"delegate-skills"},"default_branch":"master","clone_url":"https://github.com/amElnagdy/delegate-skills.git","html_url":"https://github.com/amElnagdy/delegate-skills","description":"Delegate a coding task to a separate coding agent CLI, review the diff, land the commit yourself — one per implementer.","stars":2601,"forks":221,"is_fork":false,"is_archived":false,"is_private":false,"size_kb":2209,"primary_language":"JavaScript","license_spdx":"MIT","created_at":"2026-06-14T10:35:48Z","pushed_at":"2026-11-05T20:32:18Z","security_policy_url":null,"distribution":{"owner_created_at":"2014-05-21T00:02:55Z","owner_type":"User","release_assets":[]}},"commit_sha":"7f8ae3435e5bc68a54efdca9f67797e905845562","profile":{"lines_by_language":{"JavaScript":26597,"C#":178,"Shell":65},"files_by_category":{"docs":104,"test":38,"source":24,"config":6},"source_lines":18999,"test_lines":7841},"pillars":{"ai_provenance":{"score":63.3,"confidence":0.95,"coverage":1.0,"label":"explicit","breakdown":{"attributed_share":0.6334,"suspected_share":0.0,"estimated_share":0.6334,"ai_artifacts":3.0,"flagged_work_units":0.0,"flagged_releases":0.0},"summary":"Explicit AI attribution on 63% of first-party code added; an estimated 63% including velocity signals."},"quality":{"score":53.7,"confidence":0.9,"coverage":1.0,"label":"weak","breakdown":{"complexity":41.4,"duplication":4.1,"lint":82.4,"testing":65.6,"docs":80.0,"type_safety":null,"process":null},"summary":"Code quality is weak: test-to-source ratio 0.41, no CI test run detected; 29% of function code in complex or long functions; 53% duplicated lines. Weakest area: duplication."},"security":{"score":86.4,"confidence":0.85,"coverage":1.0,"label":"strong","breakdown":{"secrets":100.0,"sast":87.1,"dependencies":null,"ci_actions":93.6,"posture":40.0,"scorecard":null},"summary":"Security posture is strong: 10 high-severity SAST findings. Weakest area: posture."}},"analyzer_results":[{"analyzer":"sec-scorecard","pillar":"security","status":"skipped","tool_version":null,"metrics":{},"findings":[],"evidence":[],"data":{},"error":"no published OpenSSF Scorecard result for this repo"},{"analyzer":"sec-registry","pillar":"security","status":"skipped","tool_version":null,"metrics":{},"findings":[],"evidence":[],"data":{},"error":"no registry dependencies declared"},{"analyzer":"ai-attribution","pillar":"ai_provenance","status":"ok","tool_version":"signatures-v1","metrics":{"commits":321.0,"attributed_commits":177.0,"attributed_commit_share":0.5514018691588785,"effective_loc":33022.0,"attributed_loc":20915.0,"attributed_loc_share":0.6333656350311914,"tools_detected":4.0},"findings":[],"evidence":[{"kind":"attribution-summary","description":"Claude Code: 111 attributed commits, 12,509 lines added","ref":null,"url":null,"weight":1.0},{"kind":"attribution-summary","description":"Cursor agent: 37 attributed commits, 5,966 lines added","ref":null,"url":null,"weight":1.0},{"kind":"attribution-summary","description":"OpenAI Codex: 26 attributed commits, 1,938 lines added","ref":null,"url":null,"weight":1.0},{"kind":"attribution-summary","description":"GitHub Copilot coding agent: 3 attributed commits, 502 lines added","ref":null,"url":null,"weight":1.0},{"kind":"attributed-commit","description":"Claude Code: on merged branch (e162cf43ff)","ref":"c020cc856fbb78d8cc941723bff79f0c9fd079c6","url":"https://github.com/amElnagdy/delegate-skills/commit/c020cc856fbb78d8cc941723bff79f0c9fd079c6","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: trailer 'Co-Authored-By: Claude'","ref":"f8cf688dab894c9691406ee161a977f81e868b74","url":"https://github.com/amElnagdy/delegate-skills/commit/f8cf688dab894c9691406ee161a977f81e868b74","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: trailer 'Co-Authored-By: Claude'","ref":"504767c78f66a0bd8564518471ff891af9567a25","url":"https://github.com/amElnagdy/delegate-skills/commit/504767c78f66a0bd8564518471ff891af9567a25","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: on merged branch (3aa72d681a)","ref":"ee56857892e4ad2f0dd010b9a650770714f42bfa","url":"https://github.com/amElnagdy/delegate-skills/commit/ee56857892e4ad2f0dd010b9a650770714f42bfa","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: on merged branch (3aa72d681a)","ref":"5c39748c3faa140deabf0b6923965b39332134fb","url":"https://github.com/amElnagdy/delegate-skills/commit/5c39748c3faa140deabf0b6923965b39332134fb","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: on merged branch (8baa98f2b6)","ref":"ec93dd09476d443fad6107a57272022aa49e5abc","url":"https://github.com/amElnagdy/delegate-skills/commit/ec93dd09476d443fad6107a57272022aa49e5abc","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: on merged branch (3aa72d681a)","ref":"2a40a4b24ae18c58f4e0ba5072c75ef414805f04","url":"https://github.com/amElnagdy/delegate-skills/commit/2a40a4b24ae18c58f4e0ba5072c75ef414805f04","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: on merged branch (1d238e4510)","ref":"9bc4d8b1f985fcf94507afe555d83b43478e79d6","url":"https://github.com/amElnagdy/delegate-skills/commit/9bc4d8b1f985fcf94507afe555d83b43478e79d6","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: on merged branch (56e431e254)","ref":"974bdd40da1cc62d37b729b6051f2260e88447c5","url":"https://github.com/amElnagdy/delegate-skills/commit/974bdd40da1cc62d37b729b6051f2260e88447c5","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: trailer 'Co-Authored-By: Claude'","ref":"c9b6035c0159e3907d6f421212dce47a83bb806e","url":"https://github.com/amElnagdy/delegate-skills/commit/c9b6035c0159e3907d6f421212dce47a83bb806e","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: trailer 'Co-Authored-By: Claude'","ref":"ecd1a254b6a2c1de5edec719b750c7470f9d57cd","url":"https://github.com/amElnagdy/delegate-skills/commit/ecd1a254b6a2c1de5edec719b750c7470f9d57cd","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: trailer 'Co-Authored-By: Claude'","ref":"5ff7e378698ca9cb7ba50d6ab5c0fca4019d984f","url":"https://github.com/amElnagdy/delegate-skills/commit/5ff7e378698ca9cb7ba50d6ab5c0fca4019d984f","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: on merged branch (3aa72d681a)","ref":"351a8ff7f2f4f1b140c0770e0bd2951a18ea9db8","url":"https://github.com/amElnagdy/delegate-skills/commit/351a8ff7f2f4f1b140c0770e0bd2951a18ea9db8","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: on merged branch (3aa72d681a)","ref":"3ac47227f33ac169c865bfa2c64776d43c16890b","url":"https://github.com/amElnagdy/delegate-skills/commit/3ac47227f33ac169c865bfa2c64776d43c16890b","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: on merged branch (3aa72d681a)","ref":"0b8a8932576754bc396af766236be6de77deb8a1","url":"https://github.com/amElnagdy/delegate-skills/commit/0b8a8932576754bc396af766236be6de77deb8a1","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: trailer 'Co-Authored-By: Claude'","ref":"6478073c8205a20ff70d9199ae85071bc7ad069d","url":"https://github.com/amElnagdy/delegate-skills/commit/6478073c8205a20ff70d9199ae85071bc7ad069d","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: trailer 'Co-Authored-By: Claude'","ref":"4a7854e6651dded9093b9efb5e6a674a3d3dccc7","url":"https://github.com/amElnagdy/delegate-skills/commit/4a7854e6651dded9093b9efb5e6a674a3d3dccc7","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: trailer 'Co-Authored-By: Claude'","ref":"3c96afddee1a320d3f26207daa19338c73a141ba","url":"https://github.com/amElnagdy/delegate-skills/commit/3c96afddee1a320d3f26207daa19338c73a141ba","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: on merged branch (6826b36308)","ref":"cb548490660eb493962615adca26afae915783d1","url":"https://github.com/amElnagdy/delegate-skills/commit/cb548490660eb493962615adca26afae915783d1","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: on merged branch (e037195fdb)","ref":"16d334cae2e0361f119c0d616c45f62c2c059586","url":"https://github.com/amElnagdy/delegate-skills/commit/16d334cae2e0361f119c0d616c45f62c2c059586","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: on merged branch (d1f1f07efc)","ref":"cdffb82cf95ad39602fe59946c72e31670c8e2ab","url":"https://github.com/amElnagdy/delegate-skills/commit/cdffb82cf95ad39602fe59946c72e31670c8e2ab","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: trailer 'Co-Authored-By: Claude'","ref":"cf38b92a164b0010f3c3dae79ea5ac1042d2cdfd","url":"https://github.com/amElnagdy/delegate-skills/commit/cf38b92a164b0010f3c3dae79ea5ac1042d2cdfd","weight":0.9},{"kind":"attributed-commit","description":"Cursor agent: author email cursoragent@cursor.com","ref":"09bdaa8fe1aa65a5e9004a518761fa876a3190e2","url":"https://github.com/amElnagdy/delegate-skills/commit/09bdaa8fe1aa65a5e9004a518761fa876a3190e2","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: trailer 'Co-Authored-By: Claude'","ref":"aae393ae275c4b4916df740807113ace044f272a","url":"https://github.com/amElnagdy/delegate-skills/commit/aae393ae275c4b4916df740807113ace044f272a","weight":0.9},{"kind":"attributed-commit","description":"Claude Code: on merged branch (e037195fdb)","ref":"75d1968f5dc986ad94f849a2efc9dc6ea5104cb8","url":"https://github.com/amElnagdy/delegate-skills/commit/75d1968f5dc986ad94f849a2efc9dc6ea5104cb8","weight":0.9}],"data":{"attributed_loc_by_commit":{"411568ae7fec89dd16c8a7fdde554bbf46331a50":316,"e95c8a1a2919703b538d0fff5c8e16f8d6965d3d":0,"a8a0cbd48bf0258f2cafe770c0cec23d37d0dd49":6,"a028f3c0ccd4add88235a3c1b1791397750cd202":0,"14860ce840274f54ce8ffacf0d892b565af5c189":17,"144c5cfb08664ad752778639bd2869199f8a3c68":500,"1c74243d4c02d003f2916e9d7981e8cba2e21ce6":0,"1f39fc5366e6b461d54ce92d695a80cf23213003":52,"4272a4b2b1465bf77e120b45308393c2028740fc":0,"a1c7c6e8286825f2ab8d803ff9457beb2fd7707e":404,"1b90a23d5f1bdb6df75cdccf78a8b94a2dc70224":16,"f429975eda4d5735cc6ba42096679dfd3b560a6c":46,"ed7c7444d9f1bd10444e4fdf2b777cbfb39c7e02":11,"938d3410b44498debeb8a008c6a4d786806c4d9f":21,"a1044f3e717e8834ae505a1b19b9b8debb4a53ad":11,"fc36f894029213b6d665f13053ebe7db99c2d5b5":18,"3ab99bb2d5ce5124d56fa0dc5cc23220b448add2":10,"470cc82ae33722b2bbf82f9edc5d428971ba924d":10,"3cad6362c23136fafc240a2496df85cafc3cfaed":566,"1387ff7b2f30f3952ee2ea773379404b472817f4":0,"d64af9b08f52857508e45019670e41f346c6a576":0,"1fd7aab6563bc10143f1ee3becbba16fa74fef7f":31,"163e9e4114da9646e9ed306b8441ce06da130c9c":36,"6c2fd9365d1b1c9e7e0d1837739c9a274da5f829":1,"78dc8af54b4fbcf660d5cf1bc8570ed23b4c7037":0,"1c2f63eabe48064c622eab1afae3be800745cb6f":497,"4a5e80354bb35b1260c2643b78684df258e676fc":0,"00ec59b606c917655c2b604dc1001a179f07aeb6":1040,"21b8507671cebc014bb0304f076f218fbafd1759":158,"078fea90c5fc77601ffa7f92b69b75e8f1b2d7da":0,"641f2932ea882414260f79a5565c78be76017671":14,"5ee66b1a4f241b3a6750729582bb580373036f2f":6,"e072866bbb341c30a16b80b7355897653c45d2f8":0,"3fdd4dc5bfd5534727b7a0a8f7a0a3f1a2ebb209":1,"d44ad730c2fc394ecde985bc1789820aa95c1839":23,"54278b1abf6d80c52b237a7703e0fbf32c73329c":5,"807b06cb5fb58af37fbf7488694fc6297f6e212d":105,"fdca81f9846bad173594fec0fae010f490288f47":761,"cdea8ac19bbd6f3f5f6f1771cebccb091ccf5b20":18,"b813d84e8b42ed2e271dd5de0991cadb78394a38":177,"c9a22d4396f3414153d9f716237557c795fd5015":88,"4741f1f77deab151044d333daf370b3936cfe4d5":801,"8f67ed7912a22068418124de49d9fb28a1503d6d":211,"9d38d36c78d22b44d9222b280d4e04059a817b1f":0,"f06d235eb02926a4bc66801811b560e14fd10256":60,"6a50784dd77093ea553202b15833e0dac1c4a271":33,"4d20ef255bf8251b242e9f5c6bd763f41d1f9f5f":101,"386f29ff5b166b0c7982fd61ae19f562903a47fe":28,"15261d2388c9726e32b5e722f7dc5a55ef12acbf":26,"47f8d0880fe22023c16314cfcc210a25ca2f16da":81,"c8c11bd67598c2ca22b7345ba7ac40037bea20ea":0,"cf9c981ab3982aef82c6938150d58a552c3ce4e4":80,"4bed617e51b0c72c6d445a60cb9b2e10e2aac24d":0,"f4f991d615f4b05ea86cbac09c6e628dabf7524b":148,"90284eb55e5643cf46f79e26d045a87787b37ae9":0,"2eecb20d9f5b48e34be9d6b4df697771540f6706":23,"5be8f167d1675dde466b23420f2f375100d9d027":9,"7edce5f5397c992725a729d993346bd698df8f06":6,"9a0196a189fd8e76498275b17b33244b9791f077":22,"f05902b4e0c5c32695913c7b7909e04a519c146d":0,"898ef2ab9de94170a1c62bace895d73c481471fb":0,"49aa17c9b3698a62434a8a1cad862251c11a1150":24,"3ae53031cccf3d8a1f50da76cb520e97628fd20c":0,"6436d0d757e2b9e3c5caa7f5a33505044967c2f5":0,"f006a643fbdf945a6dbabc925cabf1e482715315":0,"83293782927ef5cd13cf024d5c8c52a50f2d453c":0,"c82b0bb651a51d98b55be78c916ea163f8169807":0,"e20a6513d6ae74dfa8af41b0a3a24417eb478122":0,"a586a906ee3ab47ff3e5cb3e717b06b9e1b7362f":97,"5d3facd591e2668a2afab3650075899f95fa27fb":233,"d6e790bb35ca8c6ad0319e47e9a535e56bac849b":0,"fcd8f97ee6367e49e431582e60f96ec08c8d9593":20,"1b67184fcb9be749ca5b824d0639d279ff843e02":0,"d8ed6c6ae66dacba7688000126fd6a5d26ec00a6":0,"ea6f5109aa306f4fa144ba9c5db807439f59141d":0,"97126a505b563e80b9f74ddd1ca952f0600993ae":0,"c059040baa4cae9382de8e2d6b85e5a36da72faa":70,"efc19c01581571883116dba5bffaab3201c6ab9b":15,"e7dda95ec5b0d0bcf6c443d05631528804ca16fb":70,"0a2ded7004944b854c0fe651d3957ed56e23bd2f":4,"ff3b5582f4101514f0a2e3974340f700c698a084":38,"dad0108933c64b8d688ea99ad0413b883ef1f9ec":27,"4ff7bb37358b1f2479f6d71305c5a70c3cafc2fd":94,"f39dd0cda52a48a5e24d1594005899386d2bc060":1045,"9c22f11d896f1ea828c9fe3736bc88287aa53c84":35,"f4b4423724ce119d16eeab6398ea1544f19e9131":0,"1ed42e2c895137fc07fa73064486237329f6d5c8":57,"0d99d53ad3e317af420c58a5240212f9b7ea452d":0,"690d177cc6969f975595b1474fd586d100c52d15":169,"ff6cc0e47ecb03d9245bed476d7678ea6c8b17e0":0,"67f2ee151f04b39bacef34beb772a0493b61a4b1":3,"7a14857078b653675f9023d8a444cb5a5c1bc056":368,"cccdb15481b06b4cb4389e9fe45b96d2e7a88552":10,"c452485ae413c2bc61dd3b1369371148c0208edc":28,"82d06008882236cb0b61bef96b631600c0e1bbf5":688,"a83cafa3232a0891f03c35ae3d8e8838bc1984ec":0,"6dc3ae475d0a89ad7f7109c9d7d347413075f7b0":9,"137bfeef1c623db7425e1116a9a99827687a813c":95,"8b61597c5a407ae5edac57ec4a710432861a1e3d":11,"c391ece768c4bd800294dec69736f28c841384d2":0,"bf963749f9f5c1aab7dfb324f8f19a4f8ef4c20c":0,"e99a572602b59a971a936cd235c06f9c55592bd3":0,"ed326505c221135e26041fbc5f1242f6c2701251":0,"a06008268bbf4a16e15a85be556ac69ddd72964c":7,"803092dc517ba1eceded68828dd722a2f20da75d":1245,"c08216a7374f496eb4059fc4a4dd26476081cc96":106,"3a3c14716a7dc4f0940933f69d034be095b9c119":0,"3c4db71601a2f9bac777cbc7c0a83d667ed4fc2f":0,"75f1e2d2393b1292d1957827626f38235770e4f0":223,"f55bef3be683e930bbf0d9adb6dca8a17319ef76":41,"eb39dc2fe98c74546f3b83ad289c17fc2368b7d2":12,"15d7026bd7251487618b90e53d69439d02fa6d25":0,"2861b939c835db85ba112af75c8994c024f77c11":0,"cb7f5c0778ce1631bdd77eb88dd82516e73236ff":0,"e407aae64a412fe92317004bfc25ecfa4cef0ae2":0,"f324002e995cc3a7afaeee9ae3e80decffb98f29":8,"e1f99eaff2bd8ae29d3eac625bad21fdc8cbc5e4":0,"9d7df489cef4151b3c50c492ad18afc63a9a999a":1,"6b63438c02370197863d900345a9ec604502b93f":15,"3d8baf4f6f3bf0c5ea869eb38a66142f505a5e40":1,"59c3caab974cb86e49503d4b61016cb87f50c0b0":7,"031fa667d1b0f69987461963a7406dc5e9911890":50,"94c3b17edcc5f49916e2ab901ca5904a894df178":2,"6b83050d1f38981c64893307804e139492af11dc":0,"70fdb4b5bf79688a1136ddb223c75630f63ab660":0,"362c73ee4be54b776207259ba9ab0716983a8b3a":0,"88d4331cee37e2667eab4109f841b9efb543f127":858,"1fa365a6e76c3ae8d20bc3b977f1245654b73fdb":26,"91316c6568911df8c9c9278f13ab42657a22361a":0,"dc89926eeb6b1e56e1e8d23db8d2235f2221679a":0,"768e8e70af107c73cfc992f8c189d96e57804aa7":0,"6f251348176cd80d912e881ba5bc75f0fc4e055a":0,"47a6de9d8ef85b1cda96de312c0230625821b9ff":0,"bf11941c91850cbbfbf9c1202559b91acc5a438d":1007,"38467358d26eb024c9ff1ccfe1b9f911626306ac":44,"f9d4649d56a13a9f88eb8625c293dad0b316f51e":29,"9b58532e3d070158c9d6da24d815e076ed3595b7":2,"4bed66724ee4f9c59e42af5e4bef035494c6e50c":4,"cef97910e1582449f0030223302f71d354374719":41,"8511a21c5cc910a535fb774e65f29ff2637101a4":0,"92df46d9aab707e8ab36504fdfd51704359c15df":1,"3b0900706e4fba88c13f590ea8dd43014c6a3e55":0,"64b67092500e9d56bc2e956783d45ec668af678d":1341,"abe7443bce9d14086f5b85d51cc83c33d119fe0b":159,"8749637b50555e013e7ee73e3349cc6d8ace3a7b":1285,"143ad8b6b1f4df3d860047b7cf7299e58f692767":0,"67adf353d6513bfc4d641efa888942636ffc5f70":0,"6e847d1605ece2a8766298e7dc806e463f1346d4":21,"3a80a0f6401aa1f8ff5e10e9e6ef4de14f8113db":18,"d49e5b1287a61159e5da837dd1f0300d0ac4a9db":36,"f14dc1eeb27ae8c6282830566950f832ce366d02":32,"69b2eda0ae1ce1c2c2831dda2ed61938708b464a":45,"75d1968f5dc986ad94f849a2efc9dc6ea5104cb8":6,"aae393ae275c4b4916df740807113ace044f272a":79,"09bdaa8fe1aa65a5e9004a518761fa876a3190e2":121,"cf38b92a164b0010f3c3dae79ea5ac1042d2cdfd":0,"cdffb82cf95ad39602fe59946c72e31670c8e2ab":3,"16d334cae2e0361f119c0d616c45f62c2c059586":0,"cb548490660eb493962615adca26afae915783d1":0,"3c96afddee1a320d3f26207daa19338c73a141ba":179,"4a7854e6651dded9093b9efb5e6a674a3d3dccc7":56,"6478073c8205a20ff70d9199ae85071bc7ad069d":12,"0b8a8932576754bc396af766236be6de77deb8a1":532,"3ac47227f33ac169c865bfa2c64776d43c16890b":369,"351a8ff7f2f4f1b140c0770e0bd2951a18ea9db8":59,"5ff7e378698ca9cb7ba50d6ab5c0fca4019d984f":846,"ecd1a254b6a2c1de5edec719b750c7470f9d57cd":67,"c9b6035c0159e3907d6f421212dce47a83bb806e":117,"974bdd40da1cc62d37b729b6051f2260e88447c5":110,"9bc4d8b1f985fcf94507afe555d83b43478e79d6":16,"2a40a4b24ae18c58f4e0ba5072c75ef414805f04":90,"ec93dd09476d443fad6107a57272022aa49e5abc":13,"5c39748c3faa140deabf0b6923965b39332134fb":32,"ee56857892e4ad2f0dd010b9a650770714f42bfa":29,"504767c78f66a0bd8564518471ff891af9567a25":1661,"f8cf688dab894c9691406ee161a977f81e868b74":0,"c020cc856fbb78d8cc941723bff79f0c9fd079c6":47},"tools":{"claude-code":{"name":"Claude Code","commits":111,"loc":12509,"first_seen":1781434443,"last_seen":1793907625},"cursor":{"name":"Cursor agent","commits":37,"loc":5966,"first_seen":1783980759,"last_seen":1789323439},"openai-codex":{"name":"OpenAI Codex","commits":26,"loc":1938,"first_seen":1784043122,"last_seen":1787750138},"github-copilot":{"name":"GitHub Copilot coding agent","commits":3,"loc":502,"first_seen":1784711623,"last_seen":1785084629}},"monthly":{"2026-06":{"loc":822,"attributed_loc":316},"2026-07":{"loc":10674,"attributed_loc":5883},"2026-08":{"loc":14309,"attributed_loc":10195},"2026-09":{"loc":1585,"attributed_loc":533},"2026-10":{"loc":5585,"attributed_loc":3941},"2026-11":{"loc":47,"attributed_loc":47}}},"error":null},{"analyzer":"ai-artifacts","pillar":"ai_provenance","status":"ok","tool_version":"signatures-v1","metrics":{"artifacts":3.0,"workflow_agents":0.0,"tools_configured":2.0,"earliest_adoption":1781434443.0},"findings":[],"evidence":[{"kind":"ai-artifact","description":"AGENTS.md (generic-agent configuration)","ref":"AGENTS.md","url":"https://github.com/amElnagdy/delegate-skills/blob/7f8ae3435e5bc68a54efdca9f67797e905845562/AGENTS.md","weight":0.5},{"kind":"ai-artifact","description":".cursor/environment.json (cursor configuration)","ref":".cursor/environment.json","url":"https://github.com/amElnagdy/delegate-skills/blob/7f8ae3435e5bc68a54efdca9f67797e905845562/.cursor/environment.json","weight":0.5},{"kind":"ai-artifact","description":".cursor/install.sh (cursor configuration)","ref":".cursor/install.sh","url":"https://github.com/amElnagdy/delegate-skills/blob/7f8ae3435e5bc68a54efdca9f67797e905845562/.cursor/install.sh","weight":0.5}],"data":{"artifacts":[{"tool":"generic-agent","path":"AGENTS.md","added_at":1781434443},{"tool":"cursor","path":".cursor/environment.json","added_at":1786538127},{"tool":"cursor","path":".cursor/install.sh","added_at":1786538127}],"workflows":[],"tools":["cursor","generic-agent"]},"error":null},{"analyzer":"ai-velocity","pillar":"ai_provenance","status":"ok","tool_version":"prov-4","metrics":{"work_units":110.0,"flagged_units":0.0,"pre_ai_era_bursts":0.0,"pre_ai_era_measured_loc":0.0,"pre_ai_era_burst_loc":0.0,"measured_loc":33022.0,"flagged_loc":0.0,"flagged_loc_share":0.0,"max_loc_per_hour":579.3103448275862,"median_loc_per_hour":104.85238068149496,"pr_timed_units":0.0,"excluded_import_loc":0.0},"findings":[],"evidence":[],"data":{"flagged_loc_by_commit":{},"excluded_import_commits":[]},"error":null},{"analyzer":"ai-release-velocity","pillar":"ai_provenance","status":"ok","tool_version":"prov-4","metrics":{"releases":6.0,"flagged_releases":0.0,"max_loc_per_day":3608.0},"findings":[],"evidence":[],"data":{"releases":[{"from":"v0.2.0","to":"v0.3.0","loc":347,"days":3.52,"loc_per_day":98.7,"flagged":false},{"from":"v0.3.0","to":"v0.3.1","loc":46,"days":0.04,"loc_per_day":1104.0,"flagged":false},{"from":"v0.3.1","to":"v0.4.0","loc":0,"days":0.06,"loc_per_day":0.0,"flagged":false},{"from":"v0.4.0","to":"v0.4.1","loc":2021,"days":0.56,"loc_per_day":3608.0,"flagged":false},{"from":"v0.4.1","to":"v0.4.2","loc":0,"days":3.35,"loc_per_day":0.0,"flagged":false},{"from":"v0.4.2","to":"v0.5.0","loc":7235,"days":7.98,"loc_per_day":906.1,"flagged":false}]},"error":null},{"analyzer":"ai-stylometry","pillar":"ai_provenance","status":"ok","tool_version":null,"metrics":{"lines_scanned":18999.0,"index":0.0,"count:narrated_steps":0.0,"per_kloc:narrated_steps":0.0,"files:narrated_steps":0.0,"count:placeholder":0.0,"per_kloc:placeholder":0.0,"files:placeholder":0.0,"count:emoji_in_code":0.0,"per_kloc:emoji_in_code":0.0,"files:emoji_in_code":0.0,"count:assistant_voice":0.0,"per_kloc:assistant_voice":0.0,"files:assistant_voice":0.0},"findings":[],"evidence":[],"data":{},"error":null},{"analyzer":"sec-secrets","pillar":"security","status":"ok","tool_version":"gitleaks 8.30.1","metrics":{"secrets_current":0.0,"secrets_history":0.0,"secrets_nonprod":0.0,"secrets_low_confidence":0.0},"findings":[],"evidence":[],"data":{},"error":null},{"analyzer":"sec-sast","pillar":"security","status":"ok","tool_version":"opengrep 1.33.1; rules f1d2b562b414","metrics":{"findings":10.0,"findings_high":10.0,"findings_medium":0.0,"findings_low":0.0,"weighted_findings":7.5,"scanned_lines":18999.0,"parse_errors":0.0},"findings":[{"rule_id":"opengrep/javascript.lang.security.audit.spawn-shell-true","severity":"high","message":"Found '$SPAWN' with '{shell: true}'. This is dangerous because this call will spawn the command using a shell process. Doing so propagates current shell settings and variables, which makes it much easier for a malicious actor to execute commands. Use '{shell: false}' instead. [confidence low]","path":"skills/cline-delegate/scripts/relay.mjs","line":549,"fingerprint":"javascript.lang.security.audit.spawn-shell-true:skills/cline-delegate/scripts/relay.mjs:549"},{"rule_id":"opengrep/javascript.lang.security.audit.spawn-shell-true","severity":"high","message":"Found '$SPAWN' with '{shell: true}'. This is dangerous because this call will spawn the command using a shell process. Doing so propagates current shell settings and variables, which makes it much easier for a malicious actor to execute commands. Use '{shell: false}' instead. [confidence low]","path":"skills/codex-delegate/scripts/relay.mjs","line":621,"fingerprint":"javascript.lang.security.audit.spawn-shell-true:skills/codex-delegate/scripts/relay.mjs:621"},{"rule_id":"opengrep/javascript.lang.security.audit.spawn-shell-true","severity":"high","message":"Found '$SPAWN' with '{shell: true}'. This is dangerous because this call will spawn the command using a shell process. Doing so propagates current shell settings and variables, which makes it much easier for a malicious actor to execute commands. Use '{shell: false}' instead. [confidence low]","path":"skills/commandcode-delegate/scripts/relay.mjs","line":381,"fingerprint":"javascript.lang.security.audit.spawn-shell-true:skills/commandcode-delegate/scripts/relay.mjs:381"},{"rule_id":"opengrep/javascript.lang.security.audit.spawn-shell-true","severity":"high","message":"Found '$SPAWN' with '{shell: true}'. This is dangerous because this call will spawn the command using a shell process. Doing so propagates current shell settings and variables, which makes it much easier for a malicious actor to execute commands. Use '{shell: false}' instead. [confidence low]","path":"skills/copilot-delegate/scripts/relay.mjs","line":544,"fingerprint":"javascript.lang.security.audit.spawn-shell-true:skills/copilot-delegate/scripts/relay.mjs:544"},{"rule_id":"opengrep/javascript.lang.security.audit.spawn-shell-true","severity":"high","message":"Found '$SPAWN' with '{shell: true}'. This is dangerous because this call will spawn the command using a shell process. Doing so propagates current shell settings and variables, which makes it much easier for a malicious actor to execute commands. Use '{shell: false}' instead. [confidence low]","path":"skills/cursor-delegate/scripts/relay.mjs","line":548,"fingerprint":"javascript.lang.security.audit.spawn-shell-true:skills/cursor-delegate/scripts/relay.mjs:548"},{"rule_id":"opengrep/javascript.lang.security.audit.spawn-shell-true","severity":"high","message":"Found '$SPAWN' with '{shell: true}'. This is dangerous because this call will spawn the command using a shell process. Doing so propagates current shell settings and variables, which makes it much easier for a malicious actor to execute commands. Use '{shell: false}' instead. [confidence low]","path":"skills/grok-delegate/scripts/relay.mjs","line":954,"fingerprint":"javascript.lang.security.audit.spawn-shell-true:skills/grok-delegate/scripts/relay.mjs:954"},{"rule_id":"opengrep/javascript.lang.security.audit.spawn-shell-true","severity":"high","message":"Found '$SPAWN' with '{shell: true}'. This is dangerous because this call will spawn the command using a shell process. Doing so propagates current shell settings and variables, which makes it much easier for a malicious actor to execute commands. Use '{shell: false}' instead. [confidence low]","path":"skills/mcode-delegate/scripts/relay.mjs","line":364,"fingerprint":"javascript.lang.security.audit.spawn-shell-true:skills/mcode-delegate/scripts/relay.mjs:364"},{"rule_id":"opengrep/javascript.lang.security.audit.spawn-shell-true","severity":"high","message":"Found '$SPAWN' with '{shell: true}'. This is dangerous because this call will spawn the command using a shell process. Doing so propagates current shell settings and variables, which makes it much easier for a malicious actor to execute commands. Use '{shell: false}' instead. [confidence low]","path":"skills/opencode-delegate/scripts/relay.mjs","line":519,"fingerprint":"javascript.lang.security.audit.spawn-shell-true:skills/opencode-delegate/scripts/relay.mjs:519"},{"rule_id":"opengrep/javascript.lang.security.audit.spawn-shell-true","severity":"high","message":"Found '$SPAWN' with '{shell: true}'. This is dangerous because this call will spawn the command using a shell process. Doing so propagates current shell settings and variables, which makes it much easier for a malicious actor to execute commands. Use '{shell: false}' instead. [confidence low]","path":"skills/pi-delegate/scripts/relay.mjs","line":561,"fingerprint":"javascript.lang.security.audit.spawn-shell-true:skills/pi-delegate/scripts/relay.mjs:561"},{"rule_id":"opengrep/javascript.lang.security.audit.spawn-shell-true","severity":"high","message":"Found '$SPAWN' with '{shell: true}'. This is dangerous because this call will spawn the command using a shell process. Doing so propagates current shell settings and variables, which makes it much easier for a malicious actor to execute commands. Use '{shell: false}' instead. [confidence low]","path":"skills/zcode-delegate/scripts/relay.mjs","line":398,"fingerprint":"javascript.lang.security.audit.spawn-shell-true:skills/zcode-delegate/scripts/relay.mjs:398"}],"evidence":[],"data":{"rulesets":["javascript","bash"]},"error":null},{"analyzer":"sec-deps","pillar":"security","status":"skipped","tool_version":null,"metrics":{},"findings":[],"evidence":[],"data":{},"error":null},{"analyzer":"sec-actions","pillar":"security","status":"ok","tool_version":"zizmor 1.32.0","metrics":{"workflows":1.0,"findings":1.0,"findings_high":0.0,"findings_medium":1.0,"findings_low":0.0,"penalty":4.0},"findings":[{"rule_id":"zizmor/dependabot-cooldown","severity":"medium","message":"insufficient cooldown in Dependabot updates [confidence high]","path":".github/dependabot.yml","line":3,"fingerprint":"dependabot-cooldown:.github/dependabot.yml:3"}],"evidence":[],"data":{},"error":null},{"analyzer":"sec-posture","pillar":"security","status":"ok","tool_version":null,"metrics":{"check:security_policy":0.0,"check:dependency_updates":1.0,"check:signed_commits":0.0,"check:lockfiles":1.0,"signed_commit_share":0.035,"unpinned_manifests":0.0},"findings":[],"evidence":[{"kind":"posture","description":"Dependency updates: .github/dependabot.yml","ref":".github/dependabot.yml","url":null,"weight":0.0}],"data":{},"error":null},{"analyzer":"sec-distribution","pillar":"security","status":"ok","tool_version":null,"metrics":{"signals":1.0,"binary_assets":0.0,"suspicious":0.0},"findings":[],"evidence":[{"kind":"readme-download-lure","description":"gives an archive password","ref":"README.md","url":null,"weight":0.0}],"data":{"signals":["readme-download-lure"],"suspicious":false,"unusual_traction":false,"metadata":true},"error":null},{"analyzer":"qual-complexity","pillar":"quality","status":"ok","tool_version":"lizard 1.25.1","metrics":{"functions":1122.0,"function_nloc":14365.0,"mean_ccn":5.33,"p90_ccn":13.0,"complex_functions":100.0,"long_functions":2.0,"many_param_functions":0.0,"risky_nloc_share":0.2943},"findings":[],"evidence":[{"kind":"complex-function","description":"parseArgs in skills/codex-delegate/scripts/relay.mjs: complexity 50, 103 lines","ref":"skills/codex-delegate/scripts/relay.mjs","url":"https://github.com/amElnagdy/delegate-skills/blob/7f8ae3435e5bc68a54efdca9f67797e905845562/skills/codex-delegate/scripts/relay.mjs#L171","weight":0.8333333333333334},{"kind":"complex-function","description":"parseArgs in skills/claude-delegate/scripts/relay.mjs: complexity 45, 97 lines","ref":"skills/claude-delegate/scripts/relay.mjs","url":"https://github.com/amElnagdy/delegate-skills/blob/7f8ae3435e5bc68a54efdca9f67797e905845562/skills/claude-delegate/scripts/relay.mjs#L261","weight":0.75},{"kind":"complex-function","description":"parseArgs in skills/agy-delegate/scripts/relay.mjs: complexity 44, 90 lines","ref":"skills/agy-delegate/scripts/relay.mjs","url":"https://github.com/amElnagdy/delegate-skills/blob/7f8ae3435e5bc68a54efdca9f67797e905845562/skills/agy-delegate/scripts/relay.mjs#L166","weight":0.7333333333333333},{"kind":"complex-function","description":"parseArgs in skills/commandcode-delegate/scripts/relay.mjs: complexity 40, 87 lines","ref":"skills/commandcode-delegate/scripts/relay.mjs","url":"https://github.com/amElnagdy/delegate-skills/blob/7f8ae3435e5bc68a54efdca9f67797e905845562/skills/commandcode-delegate/scripts/relay.mjs#L208","weight":0.6666666666666666},{"kind":"complex-function","description":"parseArgs in skills/vibe-delegate/scripts/relay.mjs: complexity 40, 102 lines","ref":"skills/vibe-delegate/scripts/relay.mjs","url":"https://github.com/amElnagdy/delegate-skills/blob/7f8ae3435e5bc68a54efdca9f67797e905845562/skills/vibe-delegate/scripts/relay.mjs#L170","weight":0.6666666666666666},{"kind":"complex-function","description":"validateDialValue in skills/delegate-setup/scripts/config.mjs: complexity 35, 58 lines","ref":"skills/delegate-setup/scripts/config.mjs","url":"https://github.com/amElnagdy/delegate-skills/blob/7f8ae3435e5bc68a54efdca9f67797e905845562/skills/delegate-setup/scripts/config.mjs#L215","weight":0.5833333333333334},{"kind":"complex-function","description":"applyFleetLane in skills/omp-delegate/scripts/relay.mjs: complexity 35, 41 lines","ref":"skills/omp-delegate/scripts/relay.mjs","url":"https://github.com/amElnagdy/delegate-skills/blob/7f8ae3435e5bc68a54efdca9f67797e905845562/skills/omp-delegate/scripts/relay.mjs#L171","weight":0.5833333333333334},{"kind":"complex-function","description":"(anonymous) in skills/qoder-delegate/scripts/relay.mjs: complexity 35, 37 lines","ref":"skills/qoder-delegate/scripts/relay.mjs","url":"https://github.com/amElnagdy/delegate-skills/blob/7f8ae3435e5bc68a54efdca9f67797e905845562/skills/qoder-delegate/scripts/relay.mjs#L471","weight":0.5833333333333334},{"kind":"complex-function","description":"(anonymous) in skills/agy-delegate/scripts/relay.mjs: complexity 34, 49 lines","ref":"skills/agy-delegate/scripts/relay.mjs","url":"https://github.com/amElnagdy/delegate-skills/blob/7f8ae3435e5bc68a54efdca9f67797e905845562/skills/agy-delegate/scripts/relay.mjs#L791","weight":0.5666666666666667},{"kind":"complex-function","description":"parseArgs in skills/mcode-delegate/scripts/relay.mjs: complexity 34, 77 lines","ref":"skills/mcode-delegate/scripts/relay.mjs","url":"https://github.com/amElnagdy/delegate-skills/blob/7f8ae3435e5bc68a54efdca9f67797e905845562/skills/mcode-delegate/scripts/relay.mjs#L183","weight":0.5666666666666667}],"data":{},"error":null},{"analyzer":"qual-duplication","pillar":"quality","status":"ok","tool_version":"repotrust-dup-w6","metrics":{"compared_lines":15299.0,"duplicated_lines":8138.0,"duplicated_share":0.5319,"files":24.0},"findings":[],"evidence":[{"kind":"duplicate-code","description":"6+ duplicated lines: skills/agy-delegate/scripts/relay.mjs:125 and skills/aider-delegate/scripts/relay.mjs:117","ref":"skills/agy-delegate/scripts/relay.mjs","url":"https://github.com/amElnagdy/delegate-skills/blob/7f8ae3435e5bc68a54efdca9f67797e905845562/skills/agy-delegate/scripts/relay.mjs#L125","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: skills/agy-delegate/scripts/relay.mjs:169 and skills/codex-delegate/scripts/relay.mjs:174","ref":"skills/agy-delegate/scripts/relay.mjs","url":"https://github.com/amElnagdy/delegate-skills/blob/7f8ae3435e5bc68a54efdca9f67797e905845562/skills/agy-delegate/scripts/relay.mjs#L169","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: skills/agy-delegate/scripts/relay.mjs:616 and skills/cline-delegate/scripts/relay.mjs:502","ref":"skills/agy-delegate/scripts/relay.mjs","url":"https://github.com/amElnagdy/delegate-skills/blob/7f8ae3435e5bc68a54efdca9f67797e905845562/skills/agy-delegate/scripts/relay.mjs#L616","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: skills/agy-delegate/scripts/relay.mjs:691 and skills/agy-delegate/scripts/relay.mjs:769","ref":"skills/agy-delegate/scripts/relay.mjs","url":"https://github.com/amElnagdy/delegate-skills/blob/7f8ae3435e5bc68a54efdca9f67797e905845562/skills/agy-delegate/scripts/relay.mjs#L691","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: skills/agy-delegate/scripts/relay.mjs:787 and skills/cursor-delegate/scripts/relay.mjs:733","ref":"skills/agy-delegate/scripts/relay.mjs","url":"https://github.com/amElnagdy/delegate-skills/blob/7f8ae3435e5bc68a54efdca9f67797e905845562/skills/agy-delegate/scripts/relay.mjs#L787","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: skills/agy-delegate/scripts/relay.mjs:843 and skills/kimi-delegate/scripts/relay.mjs:603","ref":"skills/agy-delegate/scripts/relay.mjs","url":"https://github.com/amElnagdy/delegate-skills/blob/7f8ae3435e5bc68a54efdca9f67797e905845562/skills/agy-delegate/scripts/relay.mjs#L843","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: skills/aider-delegate/scripts/relay.mjs:142 and skills/cline-delegate/scripts/relay.mjs:127","ref":"skills/aider-delegate/scripts/relay.mjs","url":"https://github.com/amElnagdy/delegate-skills/blob/7f8ae3435e5bc68a54efdca9f67797e905845562/skills/aider-delegate/scripts/relay.mjs#L142","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: skills/aider-delegate/scripts/relay.mjs:224 and skills/kimi-delegate/scripts/relay.mjs:236","ref":"skills/aider-delegate/scripts/relay.mjs","url":"https://github.com/amElnagdy/delegate-skills/blob/7f8ae3435e5bc68a54efdca9f67797e905845562/skills/aider-delegate/scripts/relay.mjs#L224","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: skills/aider-delegate/scripts/relay.mjs:445 and skills/codex-delegate/scripts/relay.mjs:542","ref":"skills/aider-delegate/scripts/relay.mjs","url":"https://github.com/amElnagdy/delegate-skills/blob/7f8ae3435e5bc68a54efdca9f67797e905845562/skills/aider-delegate/scripts/relay.mjs#L445","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: skills/aider-delegate/scripts/relay.mjs:451 and skills/copilot-delegate/scripts/relay.mjs:470","ref":"skills/aider-delegate/scripts/relay.mjs","url":"https://github.com/amElnagdy/delegate-skills/blob/7f8ae3435e5bc68a54efdca9f67797e905845562/skills/aider-delegate/scripts/relay.mjs#L451","weight":0.3}],"data":{},"error":null},{"analyzer":"qual-lint","pillar":"quality","status":"ok","tool_version":"opengrep 1.33.1; rules f1d2b562b414","metrics":{"findings":38.0,"weighted_findings":14.75,"scanned_lines":18999.0,"category:correctness":38.0},"findings":[{"rule_id":"opengrep/javascript.lang.correctness.no-replaceall","severity":"medium","message":"The string method replaceAll is not supported in all versions of javascript, and is not supported by older browser versions. Consider using replace() with a regex as the first argument instead like mystring.replace(/bad/g, \"good\") instead of mystring.replaceAll(\"bad\", \"good\") (https://discourse.thre","path":"skills/agy-delegate/scripts/relay.mjs","line":385,"fingerprint":"javascript.lang.correctness.no-replaceall:skills/agy-delegate/scripts/relay.mjs:385"},{"rule_id":"opengrep/javascript.lang.correctness.no-replaceall","severity":"medium","message":"The string method replaceAll is not supported in all versions of javascript, and is not supported by older browser versions. Consider using replace() with a regex as the first argument instead like mystring.replace(/bad/g, \"good\") instead of mystring.replaceAll(\"bad\", \"good\") (https://discourse.thre","path":"skills/claude-delegate/scripts/relay.mjs","line":752,"fingerprint":"javascript.lang.correctness.no-replaceall:skills/claude-delegate/scripts/relay.mjs:752"},{"rule_id":"opengrep/javascript.lang.correctness.no-replaceall","severity":"medium","message":"The string method replaceAll is not supported in all versions of javascript, and is not supported by older browser versions. Consider using replace() with a regex as the first argument instead like mystring.replace(/bad/g, \"good\") instead of mystring.replaceAll(\"bad\", \"good\") (https://discourse.thre","path":"skills/commandcode-delegate/scripts/relay.mjs","line":535,"fingerprint":"javascript.lang.correctness.no-replaceall:skills/commandcode-delegate/scripts/relay.mjs:535"},{"rule_id":"opengrep/javascript.lang.correctness.no-replaceall","severity":"medium","message":"The string method replaceAll is not supported in all versions of javascript, and is not supported by older browser versions. Consider using replace() with a regex as the first argument instead like mystring.replace(/bad/g, \"good\") instead of mystring.replaceAll(\"bad\", \"good\") (https://discourse.thre","path":"skills/grok-delegate/scripts/relay.mjs","line":126,"fingerprint":"javascript.lang.correctness.no-replaceall:skills/grok-delegate/scripts/relay.mjs:126"},{"rule_id":"opengrep/javascript.lang.correctness.no-replaceall","severity":"medium","message":"The string method replaceAll is not supported in all versions of javascript, and is not supported by older browser versions. Consider using replace() with a regex as the first argument instead like mystring.replace(/bad/g, \"good\") instead of mystring.replaceAll(\"bad\", \"good\") (https://discourse.thre","path":"skills/grok-delegate/scripts/relay.mjs","line":605,"fingerprint":"javascript.lang.correctness.no-replaceall:skills/grok-delegate/scripts/relay.mjs:605"},{"rule_id":"opengrep/javascript.lang.correctness.no-replaceall","severity":"medium","message":"The string method replaceAll is not supported in all versions of javascript, and is not supported by older browser versions. Consider using replace() with a regex as the first argument instead like mystring.replace(/bad/g, \"good\") instead of mystring.replaceAll(\"bad\", \"good\") (https://discourse.thre","path":"skills/mcode-delegate/scripts/relay.mjs","line":519,"fingerprint":"javascript.lang.correctness.no-replaceall:skills/mcode-delegate/scripts/relay.mjs:519"},{"rule_id":"opengrep/javascript.lang.correctness.no-replaceall","severity":"medium","message":"The string method replaceAll is not supported in all versions of javascript, and is not supported by older browser versions. Consider using replace() with a regex as the first argument instead like mystring.replace(/bad/g, \"good\") instead of mystring.replaceAll(\"bad\", \"good\") (https://discourse.thre","path":"skills/zcode-delegate/scripts/relay.mjs","line":526,"fingerprint":"javascript.lang.correctness.no-replaceall:skills/zcode-delegate/scripts/relay.mjs:526"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/claude-delegate/scripts/relay.mjs","line":787,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/claude-delegate/scripts/relay.mjs:787"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/claude-delegate/scripts/relay.mjs","line":787,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/claude-delegate/scripts/relay.mjs:787"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/claude-delegate/scripts/relay.mjs","line":787,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/claude-delegate/scripts/relay.mjs:787"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/claude-delegate/scripts/relay.mjs","line":787,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/claude-delegate/scripts/relay.mjs:787"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/commandcode-delegate/scripts/relay.mjs","line":570,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/commandcode-delegate/scripts/relay.mjs:570"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/commandcode-delegate/scripts/relay.mjs","line":570,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/commandcode-delegate/scripts/relay.mjs:570"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/commandcode-delegate/scripts/relay.mjs","line":570,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/commandcode-delegate/scripts/relay.mjs:570"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/commandcode-delegate/scripts/relay.mjs","line":570,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/commandcode-delegate/scripts/relay.mjs:570"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/delegate-setup/scripts/config.mjs","line":462,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/delegate-setup/scripts/config.mjs:462"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/delegate-setup/scripts/config.mjs","line":462,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/delegate-setup/scripts/config.mjs:462"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/delegate-setup/scripts/config.mjs","line":482,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/delegate-setup/scripts/config.mjs:482"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/delegate-setup/scripts/config.mjs","line":482,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/delegate-setup/scripts/config.mjs:482"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/delegate-setup/scripts/config.mjs","line":482,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/delegate-setup/scripts/config.mjs:482"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/delegate-setup/scripts/config.mjs","line":486,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/delegate-setup/scripts/config.mjs:486"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/delegate-setup/scripts/config.mjs","line":486,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/delegate-setup/scripts/config.mjs:486"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/delegate-setup/scripts/discover.mjs","line":26,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/delegate-setup/scripts/discover.mjs:26"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/delegate-setup/scripts/discover.mjs","line":26,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/delegate-setup/scripts/discover.mjs:26"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/delegate-setup/scripts/discover.mjs","line":479,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/delegate-setup/scripts/discover.mjs:479"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/delegate-setup/scripts/discover.mjs","line":479,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/delegate-setup/scripts/discover.mjs:479"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/grok-delegate/scripts/relay.mjs","line":640,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/grok-delegate/scripts/relay.mjs:640"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/grok-delegate/scripts/relay.mjs","line":640,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/grok-delegate/scripts/relay.mjs:640"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/grok-delegate/scripts/relay.mjs","line":640,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/grok-delegate/scripts/relay.mjs:640"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/grok-delegate/scripts/relay.mjs","line":640,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/grok-delegate/scripts/relay.mjs:640"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/mcode-delegate/scripts/relay.mjs","line":554,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/mcode-delegate/scripts/relay.mjs:554"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/mcode-delegate/scripts/relay.mjs","line":554,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/mcode-delegate/scripts/relay.mjs:554"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/mcode-delegate/scripts/relay.mjs","line":554,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/mcode-delegate/scripts/relay.mjs:554"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/mcode-delegate/scripts/relay.mjs","line":554,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/mcode-delegate/scripts/relay.mjs:554"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/zcode-delegate/scripts/relay.mjs","line":561,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/zcode-delegate/scripts/relay.mjs:561"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/zcode-delegate/scripts/relay.mjs","line":561,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/zcode-delegate/scripts/relay.mjs:561"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/zcode-delegate/scripts/relay.mjs","line":561,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/zcode-delegate/scripts/relay.mjs:561"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"skills/zcode-delegate/scripts/relay.mjs","line":561,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:skills/zcode-delegate/scripts/relay.mjs:561"}],"evidence":[],"data":{},"error":null},{"analyzer":"qual-testing","pillar":"quality","status":"ok","tool_version":null,"metrics":{"check:has_tests":1.0,"check:test_ratio":0.8254,"check:ci_present":1.0,"check:ci_runs_tests":0.0,"check:ci_runs_lint":0.0,"check:tests_cochange":1.0,"test_lines":7841.0,"source_lines":18999.0,"test_ratio":0.4127,"ci_files":1.0,"cochange_share":0.6911,"cochange_commits":191.0},"findings":[],"evidence":[{"kind":"ci","description":"CI config: .github/workflows/relays.yml","ref":".github/workflows/relays.yml","url":null,"weight":0.0}],"data":{"test_commands":[],"lint_commands":[]},"error":null},{"analyzer":"qual-docs","pillar":"quality","status":"ok","tool_version":null,"metrics":{"check:readme":1.0,"check:license":1.0,"check:contributing":1.0,"check:changelog":0.0,"readme_lines":403.0},"findings":[],"evidence":[{"kind":"docs","description":"README.md","ref":"README.md","url":null,"weight":0.0},{"kind":"docs","description":"LICENSE","ref":"LICENSE","url":null,"weight":0.0},{"kind":"docs","description":"CONTRIBUTING.md","ref":"CONTRIBUTING.md","url":null,"weight":0.0}],"data":{},"error":null},{"analyzer":"qual-type-safety","pillar":"quality","status":"skipped","tool_version":null,"metrics":{},"findings":[],"evidence":[],"data":{},"error":null},{"analyzer":"x-blame","pillar":"ai_provenance","status":"ok","tool_version":"git-blame","metrics":{"ai_lines":13065.0,"other_lines":5934.0,"files_blamed":24.0,"blame_failures":0.0,"quality:ai_findings":21.0,"quality:ai_per_kloc":1.607,"quality:other_findings":17.0,"quality:other_per_kloc":2.865,"quality:ratio":0.56,"security:ai_findings":1.0,"security:ai_per_kloc":0.077,"security:other_findings":9.0,"security:other_per_kloc":1.517,"security:ratio":0.05},"findings":[],"evidence":[],"data":{"sampled":false,"comparable":true},"error":null}],"flags":[]}