511 Commits

Author SHA1 Message Date
yaojingang f5f5128437 docs: add skill install quickstart 2026-07-06 08:10:46 +08:00
yaojingang cf70bbe6c2 Improve yao meta skill trigger coverage 2026-07-02 11:29:19 +08:00
yaojingang ab2b0e9fb5 Refresh ledger-driven beta evidence reports 2026-06-17 16:59:45 +08:00
yaojingang e79050ed12 Make beta evidence deferrals ledger-driven 2026-06-17 16:58:32 +08:00
yaojingang 6426f9c6c9 Refresh beta test evidence reports 2026-06-17 16:27:39 +08:00
yaojingang ed975a2bf2 Add beta test release boundary 2026-06-17 16:25:47 +08:00
yaojingang 9c193f2e91 Refresh public evidence reports 2026-06-17 16:09:03 +08:00
yaojingang d845e9513c Allow private evidence states in review studio tests 2026-06-17 16:07:29 +08:00
yaojingang a19d29f97b Refresh post-CI evidence reports 2026-06-17 15:57:16 +08:00
yaojingang e39be9d5d4 Refresh clean release evidence reports 2026-06-17 15:53:58 +08:00
yaojingang cece6f9b04 Harden world-class release gates 2026-06-17 15:52:33 +08:00
yaojingang e503cd6333 Add world-class release coordination gate 2026-06-17 12:07:04 +08:00
yaojingang ff0473ac02 Refresh review action contract release evidence 2026-06-17 05:27:05 +08:00
yaojingang 4c30a659ef Add review action contract fields 2026-06-17 05:25:52 +08:00
yaojingang 10dd886ae7 Refresh gate action mirror release evidence 2026-06-17 05:18:35 +08:00
yaojingang cd71fd61e4 Mirror review actions into gates 2026-06-17 05:17:41 +08:00
yaojingang 7050664b48 Refresh operator phase queue release lock 2026-06-17 05:11:16 +08:00
yaojingang 4309d9bbcd Mirror phase queues into operator runbook 2026-06-17 05:10:31 +08:00
yaojingang 6ece6407e8 Refresh final phase queue release lock 2026-06-17 05:02:06 +08:00
yaojingang 136654cda9 Refresh full phase queue evidence bundle 2026-06-17 05:01:41 +08:00
yaojingang 28c48ec248 Refresh phase queue consistency evidence 2026-06-17 05:00:28 +08:00
yaojingang 9eaa8f6cec Add phase queue consistency gate 2026-06-17 04:59:46 +08:00
yaojingang c30882468f Refresh preflight phase queue evidence 2026-06-17 04:48:38 +08:00
yaojingang 0f97b66ed8 Expose preflight phase queues 2026-06-17 04:47:48 +08:00
yaojingang ca23db4296 Refresh phase queue clean-lock evidence 2026-06-17 04:32:58 +08:00
yaojingang 7512dc3309 Add world-class submission phase queue 2026-06-17 04:32:28 +08:00
yaojingang 2efe6413f0 Refresh clean-lock release evidence 2026-06-17 04:24:04 +08:00
yaojingang ed6960f65d Separate source and generated release locks 2026-06-17 04:23:04 +08:00
yaojingang 4a1a529570 Prioritize world-class repair actions 2026-06-17 04:10:13 +08:00
yaojingang f2cf8a9e53 Surface preflight repair rows in Review Studio 2026-06-17 04:01:58 +08:00
yaojingang e336777575 Expose world-class preflight repair rows 2026-06-17 03:49:07 +08:00
yaojingang 48a503f8f6 Add world-class submission repair checklist 2026-06-17 03:41:22 +08:00
yaojingang 2241b0e344 Harden blind review evidence integrity 2026-06-17 03:31:42 +08:00
yaojingang 00a8265b81 Refresh clean-lock evidence after source anchors 2026-06-17 03:13:45 +08:00
yaojingang 360f05503d Refresh context budget after source anchor update 2026-06-17 03:11:34 +08:00
yaojingang 52ec9e3720 Tighten Review Studio source anchors 2026-06-17 03:10:24 +08:00
yaojingang c4f903bf8a Refresh clean-lock report evidence 2026-06-17 03:05:56 +08:00
yaojingang d709f043a2 Refresh context budget after evidence updates 2026-06-17 03:03:18 +08:00
yaojingang 8aca34cec3 Surface human adjudication privacy evidence 2026-06-17 03:00:51 +08:00
yaojingang 774b77632a Hash prompts in human adjudication evidence 2026-06-17 02:50:36 +08:00
yaojingang 651792dc3d Reject raw fields in external evidence artifacts 2026-06-17 02:43:28 +08:00
yaojingang 84560371a2 Reject raw fields in native telemetry evidence 2026-06-17 02:38:46 +08:00
yaojingang 96d1fbe209 Tighten human evidence intake validation 2026-06-17 02:34:17 +08:00
yaojingang 8c18faf49b Align human evidence rationale contract 2026-06-17 02:29:35 +08:00
yaojingang f9fc7d333b Refresh clean benchmark evidence 2026-06-17 02:23:23 +08:00
yaojingang 61898d145c Harden human output review evidence 2026-06-17 02:20:13 +08:00
yaojingang f295fdf610 Refine skill overview metrics layout 2026-06-17 02:05:45 +08:00
yaojingang f7f3c7c806 Stabilize Review Studio release lock 2026-06-17 01:55:20 +08:00
yaojingang 4047cfdb1a Refresh Review Studio release context 2026-06-17 01:55:02 +08:00
yaojingang c8febd1a7b Refresh Review Studio watchlist evidence 2026-06-17 01:54:37 +08:00
yaojingang 569d8fa019 Align Review Studio architecture watchlist test 2026-06-17 01:53:41 +08:00
yaojingang 5b52d7db65 Stabilize cross-packager contract release lock 2026-06-17 01:50:54 +08:00
yaojingang 6155195b86 Refresh cross-packager contract reports 2026-06-17 01:50:33 +08:00
yaojingang 3841c074e3 Split cross-packager contracts 2026-06-17 01:50:01 +08:00
yaojingang 7f91c2dd36 Refresh Review Studio gate helper release lock 2026-06-17 01:40:53 +08:00
yaojingang 5e28861c41 Stabilize Review Studio gate helper context reports 2026-06-17 01:40:29 +08:00
yaojingang 5c1ff9f94a Refresh Review Studio gate helper reports 2026-06-17 01:40:06 +08:00
yaojingang fb00ecbd5a Split Review Studio gate helpers 2026-06-17 01:39:41 +08:00
yaojingang 5e2163683a Refresh Review Studio panel release lock 2026-06-17 01:32:00 +08:00
yaojingang d5beede0a6 Stabilize Review Studio panel context reports 2026-06-17 01:31:37 +08:00
yaojingang 10114cc408 Refresh Review Studio panel reports 2026-06-17 01:31:17 +08:00
yaojingang bc74e896e0 Split Review Studio panel renderers 2026-06-17 01:30:53 +08:00
yaojingang 2ca48b21ec Refresh skill overview section release lock 2026-06-17 01:23:00 +08:00
yaojingang 7e6dc148c9 Stabilize skill overview section context reports 2026-06-17 01:22:30 +08:00
yaojingang cea008afc1 Refresh skill overview section reports 2026-06-17 01:22:04 +08:00
yaojingang f37fd3a073 Split skill overview report sections 2026-06-17 01:21:34 +08:00
yaojingang 421bd08909 Refresh Skill Atlas helper release lock 2026-06-17 01:15:46 +08:00
yaojingang 5b7e118c2e Stabilize Skill Atlas helper context reports 2026-06-17 01:15:18 +08:00
yaojingang e3f90164f0 Refresh Skill Atlas helper reports 2026-06-17 01:14:54 +08:00
yaojingang 1f5419e919 Split Skill Atlas opportunity helpers 2026-06-17 01:14:21 +08:00
yaojingang 4db372a568 Refresh reference synthesis release lock 2026-06-17 01:07:21 +08:00
yaojingang 5f2bcbf029 Refresh reference synthesis context timestamp 2026-06-17 01:06:29 +08:00
yaojingang dac2654a87 Split reference synthesis markdown renderer 2026-06-17 01:06:04 +08:00
yaojingang 6385cb14fa Refresh coverage renderer release lock 2026-06-17 00:59:37 +08:00
yaojingang 223ff6dc51 Stabilize coverage report lock inputs 2026-06-17 00:58:56 +08:00
yaojingang 3281a40960 Refresh coverage context reports 2026-06-17 00:58:28 +08:00
yaojingang 9172b6719c Split Skill OS coverage markdown renderer 2026-06-17 00:57:52 +08:00
yaojingang cf17324889 Refresh review viewer asset release lock 2026-06-17 00:51:28 +08:00
yaojingang de1a50f0ce Refresh context budget timestamp 2026-06-17 00:51:00 +08:00
yaojingang 71d880076e Split review viewer CSS asset 2026-06-17 00:50:31 +08:00
yaojingang 548e225c3e Refresh final early watch release lock 2026-06-17 00:40:12 +08:00
yaojingang 070a89afc2 Stabilize context budget after CI evidence 2026-06-17 00:39:35 +08:00
yaojingang bd9aff0d9f Refresh post-CI dirty release evidence 2026-06-17 00:39:00 +08:00
yaojingang 65b7bb5e03 Refresh CI generated evidence after early watch 2026-06-17 00:38:26 +08:00
yaojingang ddbb51f33b Refresh early watch clean release evidence 2026-06-17 00:36:04 +08:00
yaojingang e4473fc852 Add early architecture watch evidence 2026-06-17 00:35:26 +08:00
yaojingang 59ec05a775 Record clean stale-lock freshness check 2026-06-17 00:27:21 +08:00
yaojingang cdc6b9d042 Refresh final stale-lock release reports 2026-06-17 00:27:01 +08:00
yaojingang 9da8d0e08b Refresh evidence after stale lock guard 2026-06-17 00:26:39 +08:00
yaojingang 67058ceceb Record final clean lock consistency 2026-06-17 00:24:27 +08:00
yaojingang ac32763091 Refresh clean stale-lock release reports 2026-06-17 00:24:10 +08:00
yaojingang b6ded57f9c Refresh stale lock guard report mirrors 2026-06-17 00:23:45 +08:00
yaojingang 7476c7ccbf Detect stale clean release locks 2026-06-17 00:22:57 +08:00
yaojingang 108f4d8b87 Refresh registry and atlas metadata 2026-06-17 00:17:57 +08:00
yaojingang 97edbb16ce Refresh submission privacy release locks 2026-06-17 00:15:46 +08:00
yaojingang 3961b60341 Block answer-key fields in evidence submissions 2026-06-17 00:15:07 +08:00
yaojingang 500f8cc34e Refresh clean privacy guard release locks 2026-06-17 00:09:52 +08:00
yaojingang 4a5880bea1 Refresh context budget report totals 2026-06-17 00:09:30 +08:00
yaojingang f3957bfc06 Refresh output review privacy guard locks 2026-06-17 00:08:54 +08:00
yaojingang a5810d90e5 Refresh generated reports after privacy guard 2026-06-17 00:08:17 +08:00
yaojingang 1945775f93 Share output review privacy guard 2026-06-17 00:07:59 +08:00
yaojingang 190700c7d5 Refresh human evidence privacy locks 2026-06-17 00:00:53 +08:00
yaojingang 2a6970e54f Refresh context budget totals 2026-06-17 00:00:33 +08:00
yaojingang 33762684cc Align human evidence privacy guard 2026-06-17 00:00:05 +08:00
yaojingang c07161a46c Refresh output review privacy locks 2026-06-16 23:56:32 +08:00
yaojingang 780710bcff Refresh context budget totals 2026-06-16 23:56:12 +08:00
yaojingang 3dfac4bead Align output review import privacy guard 2026-06-16 23:55:40 +08:00
yaojingang 44c6abc4f8 Refresh output review import locks 2026-06-16 23:51:18 +08:00
yaojingang c2c543fb76 Refresh context budget totals 2026-06-16 23:50:56 +08:00
yaojingang a943662be1 Reject nested output review import leaks 2026-06-16 23:50:18 +08:00
yaojingang 81496933d7 Refresh human evidence guard locks 2026-06-16 23:46:22 +08:00
yaojingang 53ef4d394c Refresh context budget summary date 2026-06-16 23:45:27 +08:00
yaojingang 0e71032de4 Reject nested human adjudication leaks 2026-06-16 23:44:44 +08:00
yaojingang 69f5dc3f9e Refresh native telemetry evidence locks 2026-06-16 23:39:55 +08:00
yaojingang 03aa628712 Validate native telemetry evidence rows 2026-06-16 23:39:13 +08:00
yaojingang dfda1fc0c0 Refresh native permission evidence locks 2026-06-16 23:27:24 +08:00
yaojingang 1be80208f3 Refresh context budget summary date 2026-06-16 23:26:54 +08:00
yaojingang c550afc657 Validate native permission evidence rows 2026-06-16 23:26:15 +08:00
yaojingang 9f7f2fc61f Refresh artifact kind validation locks 2026-06-16 23:20:10 +08:00
yaojingang 9bf9b1ca20 Bind world-class artifact refs to expected kinds 2026-06-16 23:19:51 +08:00
yaojingang 59762cf679 Refresh duplicate artifact guard locks 2026-06-16 23:15:06 +08:00
yaojingang 9a269bda3c Reject duplicate world-class artifact refs 2026-06-16 23:14:47 +08:00
yaojingang 8e6df3b5c2 Refresh human evidence validation locks 2026-06-16 23:10:54 +08:00
yaojingang c7d04459c1 Refresh context budget summary date 2026-06-16 23:10:35 +08:00
yaojingang b0591dd2ab Validate human adjudication evidence rows 2026-06-16 23:09:48 +08:00
yaojingang 6c2a070b59 Refresh provider evidence validation locks 2026-06-16 22:57:22 +08:00
yaojingang 46716b5330 Refresh context budget after provider guard 2026-06-16 22:56:53 +08:00
yaojingang 965e91043b Tighten provider evidence run validation 2026-06-16 22:56:04 +08:00
yaojingang 87e29704a7 Refresh ledger review timestamp locks 2026-06-16 22:46:57 +08:00
yaojingang 768f61ee47 Validate ledger review timestamp order 2026-06-16 22:46:33 +08:00
yaojingang 9abc16d3ed Refresh ledger reviewer identity locks 2026-06-16 22:40:02 +08:00
yaojingang 4f3d9af19f Require ledger reviewer identity for world-class evidence 2026-06-16 22:39:27 +08:00
yaojingang acafafcdd3 Refresh reviewer approval evidence locks 2026-06-16 22:33:24 +08:00
yaojingang a5bdd57ea1 Require reviewer approval for world-class evidence 2026-06-16 22:32:44 +08:00
yaojingang 1e1cb52f5d Refresh world-class handoff evidence locks 2026-06-16 22:25:33 +08:00
yaojingang 63eb98df75 Refresh context summary date 2026-06-16 22:25:03 +08:00
yaojingang 00ee3a61aa Add world-class submission handoff steps 2026-06-16 22:24:13 +08:00
yaojingang 2e040a0c95 Refresh adaptation evidence locks 2026-06-16 22:17:33 +08:00
yaojingang 001210458f Extract adaptation safety helpers 2026-06-16 22:17:09 +08:00
yaojingang 8babdd42f1 Refresh gate contract release lock 2026-06-16 22:10:24 +08:00
yaojingang 6fd6399ed2 Extract Review Studio gate contract helpers 2026-06-16 22:10:00 +08:00
yaojingang 5736959abe Refresh trust helper release lock 2026-06-16 22:03:41 +08:00
yaojingang 13baae414a Sync Skill OS review trust evidence 2026-06-16 22:03:14 +08:00
yaojingang ee62291551 Extract trust check script inventory helpers 2026-06-16 22:02:30 +08:00
yaojingang a37b760e72 Refresh zero-watchlist release lock 2026-06-16 21:56:35 +08:00
yaojingang 46b9f7a260 Align Yao CLI architecture watchlist expectation 2026-06-16 21:56:10 +08:00
yaojingang 361d3c8104 Refresh Review Studio helper release lock 2026-06-16 21:54:55 +08:00
yaojingang de51f71ec3 Extract Review Studio test helpers 2026-06-16 21:54:29 +08:00
yaojingang 3316b11cec Refresh review studio release lock 2026-06-16 21:47:33 +08:00
yaojingang abe4ecf3bf Refresh context budget after review test fix 2026-06-16 21:47:11 +08:00
yaojingang ac3be40c6a Accept singular Review Studio watchlist text 2026-06-16 21:46:31 +08:00
yaojingang 220b198763 Refresh Yao CLI helper release lock 2026-06-16 21:43:49 +08:00
yaojingang c86602332d Extract Yao CLI test helpers 2026-06-16 21:42:08 +08:00
yaojingang 1ae595bdd5 Refresh description optimizer release lock 2026-06-16 17:23:47 +08:00
yaojingang bc2e300fe9 Refresh description optimizer context budget lock 2026-06-16 17:22:51 +08:00
yaojingang c0abbc5e7d Extract description optimizer reporting 2026-06-16 17:20:19 +08:00
yaojingang 614c048c61 Refresh compile target release lock 2026-06-16 17:11:08 +08:00
yaojingang ee8e56b1a9 Extract compile skill target models 2026-06-16 17:10:06 +08:00
yaojingang e0b66672f7 Refresh Skill Atlas layout release lock 2026-06-16 16:55:26 +08:00
yaojingang 3e48ee1ad2 Extract Skill Atlas layout renderer 2026-06-16 16:54:45 +08:00
yaojingang ecfe1d77a5 Refresh CLI parser release lock 2026-06-16 16:15:37 +08:00
yaojingang 8d254d1db3 Extract CLI operating loop parser 2026-06-16 16:15:04 +08:00
yaojingang 5aa16d5d48 Refresh report source release lock 2026-06-16 16:01:38 +08:00
yaojingang 3b19cf5690 Extract skill overview source helpers 2026-06-16 16:00:25 +08:00
yaojingang 1ad559bf22 Refresh overview layout release lock 2026-06-16 15:45:26 +08:00
yaojingang f16f783c7c Refine skill overview report layout 2026-06-16 15:44:26 +08:00
yaojingang f25f3f52b1 Refresh evidence core release lock 2026-06-16 15:30:31 +08:00
yaojingang ac4222b442 Refresh evidence core context budget 2026-06-16 15:29:57 +08:00
yaojingang 39dd91322c Extract evidence consistency core helpers 2026-06-16 15:29:34 +08:00
yaojingang ae3d47a168 Refresh renderer line budget release lock 2026-06-16 15:19:27 +08:00
yaojingang c2aa90b85d Refresh context budget before release lock 2026-06-16 15:18:58 +08:00
yaojingang 649abe05ca Keep review studio renderer within line budget 2026-06-16 15:18:31 +08:00
yaojingang 355a3cce36 Refresh report layout release lock evidence 2026-06-16 15:15:28 +08:00
yaojingang 026efd17e3 Refresh clean-lock context reports 2026-06-16 15:14:47 +08:00
yaojingang e23f3ffdcf Tighten report layout and gate contract evidence 2026-06-16 15:12:32 +08:00
yaojingang 538d7ed401 Refresh gate contract release evidence lock 2026-06-16 14:57:18 +08:00
yaojingang 0ee209e7fd Centralize review studio gate contract 2026-06-16 14:56:43 +08:00
yaojingang ca94d734ee Refresh waiver policy release evidence lock 2026-06-16 14:51:14 +08:00
yaojingang 499214b052 Align review waiver gate policy with studio gates 2026-06-16 14:50:44 +08:00
yaojingang 6a87913221 Refresh bilingual report release evidence lock 2026-06-16 14:43:48 +08:00
yaojingang be399c8b60 Improve skill overview bilingual report copy 2026-06-16 14:43:14 +08:00
yaojingang 5b858a903d Refresh evidence review release evidence lock 2026-06-16 09:59:12 +08:00
yaojingang 07380f06b3 Refresh evidence review clean-lock inputs 2026-06-16 09:58:51 +08:00
yaojingang ca6afbde87 Split Skill OS review consistency check 2026-06-16 09:58:18 +08:00
yaojingang 129ab2a1c7 Refresh preflight release evidence lock 2026-06-16 09:48:56 +08:00
yaojingang d3076c3561 Refresh preflight clean-lock inputs 2026-06-16 09:48:26 +08:00
yaojingang 74e666e79a Split world-class preflight layout 2026-06-16 09:47:48 +08:00
yaojingang 553836e2bd Refresh clean release evidence lock 2026-06-16 09:36:43 +08:00
yaojingang 61e44005c4 Stabilize clean-lock context reports 2026-06-16 09:36:08 +08:00
yaojingang e5580d2777 Refresh clean-lock report inputs 2026-06-16 09:35:36 +08:00
yaojingang 7d72ea9a75 Split evidence CLI parser declarations 2026-06-16 09:34:59 +08:00
yaojingang 94a331ca89 Refresh clean world-class CLI test lock 2026-06-16 09:22:08 +08:00
yaojingang 4f339c5366 Stabilize context budget prelock reports 2026-06-16 09:21:33 +08:00
yaojingang 7df231b6d2 Normalize context summary prelock reports 2026-06-16 09:20:54 +08:00
yaojingang 9e02e6f509 Split world-class CLI smoke tests 2026-06-16 09:19:41 +08:00
yaojingang 7f8942327a Refresh submission kit verifier evidence lock 2026-06-16 08:21:07 +08:00
yaojingang 7c44c9af88 Split world-class submission kit verifier 2026-06-16 08:19:07 +08:00
yaojingang e74ebe2359 Refresh clean provider runbook evidence lock 2026-06-16 08:08:59 +08:00
yaojingang 0ee1f89637 Make provider evidence runbook copy safe 2026-06-16 08:08:26 +08:00
yaojingang 54851019f5 Refresh clean report audit release lock 2026-06-16 07:57:36 +08:00
yaojingang 4b2767900b Include Skill OS audit in report refresh 2026-06-16 07:57:05 +08:00
yaojingang 9b3b3af304 Refresh clean artifact role release lock 2026-06-16 07:50:18 +08:00
yaojingang 044abd49ec Refresh context evidence after artifact roles 2026-06-16 07:49:44 +08:00
yaojingang 5517bcf7a4 Mirror artifact roles in Review Studio 2026-06-16 07:49:02 +08:00
yaojingang a441abf61b Refresh clean preflight role reports 2026-06-16 07:30:35 +08:00
yaojingang 89637b99a2 Refresh context summary date 2026-06-16 07:29:58 +08:00
yaojingang b26eda78c1 Expose preflight artifact role contract 2026-06-16 07:28:39 +08:00
yaojingang 220f68a066 Refresh downstream reports for artifact roles 2026-06-16 07:12:08 +08:00
yaojingang e81337c7db Refresh clean benchmark for artifact roles 2026-06-16 07:11:43 +08:00
yaojingang 28c83c6976 Clarify world-class submission artifact roles 2026-06-16 07:11:23 +08:00
yaojingang e0a19e9b24 Refresh downstream reports for review studio cards 2026-06-16 07:02:50 +08:00
yaojingang 39e9cecc34 Refresh clean benchmark for review studio cards 2026-06-16 07:02:24 +08:00
yaojingang 30451d41f6 Expand review studio world-class action cards 2026-06-16 07:02:02 +08:00
yaojingang 5338a77016 Refresh downstream reports for source excerpts 2026-06-16 06:48:00 +08:00
yaojingang 580253f34a Refresh clean benchmark for source excerpts 2026-06-16 06:47:23 +08:00
yaojingang c325269f10 Add review studio source excerpts 2026-06-16 06:47:07 +08:00
yaojingang be7fce3108 Refresh downstream reports for overview assets 2026-06-16 06:39:14 +08:00
yaojingang 27203c7ace Refresh clean benchmark for overview assets 2026-06-16 06:38:57 +08:00
yaojingang 15c743370e Extract overview report assets 2026-06-16 06:36:45 +08:00
yaojingang 62c319c779 Refresh downstream reports for renderer split 2026-06-16 06:26:11 +08:00
yaojingang 1416fe8303 Refresh clean benchmark lock 2026-06-16 06:25:44 +08:00
yaojingang 11c3941440 Extract submission kit renderers 2026-06-16 06:25:29 +08:00
yaojingang dc638da4d9 Refresh downstream reports for submission matrix 2026-06-16 06:15:19 +08:00
yaojingang 85442f654d Refresh clean benchmark for submission matrix 2026-06-16 06:14:50 +08:00
yaojingang 842717311a Add world-class submission readiness matrix 2026-06-16 06:14:31 +08:00
yaojingang 1e6c3a8398 Refresh downstream evidence reports 2026-06-16 06:02:56 +08:00
yaojingang 18d5279c9c Refresh clean benchmark after intake hardening 2026-06-16 06:01:06 +08:00
yaojingang a99c44d318 Harden world-class evidence intake contract 2026-06-16 06:00:53 +08:00
yaojingang 69a3441696 Refresh evidence consistency report 2026-06-16 05:52:54 +08:00
yaojingang 8bab818bec Refresh review reports after evidence update 2026-06-16 05:52:38 +08:00
yaojingang 283c2d6ccf Refresh clean benchmark lock 2026-06-16 05:52:16 +08:00
yaojingang a7f3cdad84 Refresh context budget after review importer 2026-06-16 05:51:58 +08:00
yaojingang d36bc8422f Add safe output review decision importer 2026-06-16 05:51:36 +08:00
yaojingang 266dfe3f9a Refresh final consistency after SkillOps panel extraction 2026-06-16 05:36:21 +08:00
yaojingang 2a115d79ca Refresh clean Review Studio reports after SkillOps panel extraction 2026-06-16 05:36:09 +08:00
yaojingang f877e99250 Refresh clean benchmark after SkillOps panel extraction 2026-06-16 05:35:53 +08:00
yaojingang 6e04832315 Refresh clean context budget after SkillOps panel extraction 2026-06-16 05:35:43 +08:00
yaojingang 9e0022ebd4 Extract Review Studio SkillOps panels 2026-06-16 05:35:24 +08:00
yaojingang 762fe3ee9a Refresh final consistency for Review Studio SkillOps 2026-06-16 05:32:15 +08:00
yaojingang b7f16b37d9 Refresh clean Review Studio SkillOps reports 2026-06-16 05:32:04 +08:00
yaojingang 323258395c Refresh clean benchmark lock for Review Studio SkillOps 2026-06-16 05:31:38 +08:00
yaojingang 69e1f7a898 Refresh clean context budget for Review Studio SkillOps 2026-06-16 05:31:18 +08:00
yaojingang 8338eccf01 Refresh Review Studio SkillOps source evidence 2026-06-16 05:30:41 +08:00
yaojingang 36160e9466 Surface SkillOps curator in Review Studio 2026-06-16 05:25:58 +08:00
yaojingang 0051dad489 Refresh final consistency after test isolation 2026-06-16 05:19:15 +08:00
yaojingang 8ecf245d4c Refresh clean downstream reports after test isolation 2026-06-16 05:19:03 +08:00
yaojingang 72859b1736 Refresh benchmark lock after test isolation 2026-06-16 05:18:47 +08:00
yaojingang 03718ae7ad Refresh context budget after test isolation 2026-06-16 05:18:32 +08:00
yaojingang 92a4c53f16 Refresh python compat isolation package evidence 2026-06-16 05:18:10 +08:00
yaojingang d9e07da031 Keep python compatibility fixture output isolated 2026-06-16 05:17:08 +08:00
yaojingang e1b0e71135 Refresh final evidence consistency 2026-06-16 05:15:15 +08:00
yaojingang 4cb9f928c4 Refresh clean weekly curator reports 2026-06-16 05:15:03 +08:00
yaojingang 8a9d76f7c0 Refresh clean benchmark lock 2026-06-16 05:14:44 +08:00
yaojingang aee5491032 Refresh clean context budget evidence 2026-06-16 05:14:31 +08:00
yaojingang ee8e207e8b Refresh weekly curator source evidence 2026-06-16 05:13:52 +08:00
yaojingang 089d0a77f2 Integrate weekly curator into report flow 2026-06-16 05:09:49 +08:00
yaojingang 3bfc56f026 Add weekly SkillOps curator report 2026-06-16 05:01:15 +08:00
yaojingang 44cfb472fc Refresh final evidence consistency 2026-06-16 04:49:58 +08:00
yaojingang 5457ad2d23 Refresh benchmark-dependent reports 2026-06-16 04:49:44 +08:00
yaojingang ea0601a0bb Refresh clean benchmark lock 2026-06-16 04:49:04 +08:00
yaojingang 904969b91f Refresh SkillOps evidence reports 2026-06-16 04:48:33 +08:00
yaojingang 3677dd4664 Add SkillOps opportunity scoring 2026-06-16 04:46:26 +08:00
yaojingang 2a9c127c13 Lock evidence consistency after review studio update 2026-06-16 04:36:11 +08:00
yaojingang 9be9656e0e Refresh clean-lock consumers after review studio update 2026-06-16 04:35:46 +08:00
yaojingang 7e726daaf3 Relock benchmark after review studio test update 2026-06-16 04:35:21 +08:00
yaojingang 3ea32f51a5 Update Review Studio coverage expectations 2026-06-16 04:35:07 +08:00
yaojingang e65ee917b7 Lock evidence consistency 2026-06-16 04:32:09 +08:00
yaojingang e8ddd55efd Refresh clean-lock report consumers 2026-06-16 04:31:48 +08:00
yaojingang a80da65f8c Lock benchmark evidence 2026-06-16 04:31:25 +08:00
yaojingang 5e72c0c8f8 Stage clean-lock report prerequisites 2026-06-16 04:31:03 +08:00
yaojingang cd4c8036a9 Refresh Daily SkillOps evidence 2026-06-16 04:30:00 +08:00
yaojingang cf4da35499 Add Daily SkillOps reporting 2026-06-16 04:29:24 +08:00
yaojingang 5cb10444c4 Refresh prefilled submission lock reports 2026-06-16 04:08:05 +08:00
yaojingang c5165be99c Refresh context budget for preflight handoff 2026-06-16 04:07:24 +08:00
yaojingang b9016b76d8 Refresh prefilled submission preflight evidence 2026-06-16 04:06:37 +08:00
yaojingang cba7aad149 Expose prefilled submission kit in preflight 2026-06-16 04:04:24 +08:00
yaojingang 7c8bf844af Refresh submission prefill lock reports 2026-06-16 03:59:38 +08:00
yaojingang 85ff9e41b1 Refresh submission prefill evidence reports 2026-06-16 03:59:04 +08:00
yaojingang fa4067771b Prefill world-class submission artifact hashes 2026-06-16 03:58:05 +08:00
yaojingang 7b21b9f633 Harden world-class external evidence intake 2026-06-16 03:50:10 +08:00
yaojingang 171962b23d Refresh shared report flow lock reports 2026-06-16 03:38:51 +08:00
yaojingang 58fd1326d0 Refresh shared report flow context lock reports 2026-06-16 03:38:24 +08:00
yaojingang 3844ff2b3b Refresh shared report flow source evidence 2026-06-16 03:38:00 +08:00
yaojingang dd3c260ff2 Share telemetry aggregate protection across report flows 2026-06-16 03:37:05 +08:00
yaojingang f930167d5a Refresh report command lock reports 2026-06-16 03:34:03 +08:00
yaojingang 2590cafd98 Refresh report command context lock reports 2026-06-16 03:33:36 +08:00
yaojingang b830d19a23 Refresh report command source evidence 2026-06-16 03:33:16 +08:00
yaojingang 7d19feb9cb Keep report command telemetry aggregate stable 2026-06-16 03:32:11 +08:00
yaojingang 61e71de7a4 Refresh human evidence lock reports 2026-06-16 03:26:39 +08:00
yaojingang 3323880da2 Refresh human evidence context lock reports 2026-06-16 03:26:02 +08:00
yaojingang 9b9ea7d4fb Harden human adjudication evidence intake 2026-06-16 03:25:39 +08:00
yaojingang 9d1e401088 Refresh shared Skill IR lock reports 2026-06-16 03:13:29 +08:00
yaojingang 290134b4d1 Refresh context budget lock reports 2026-06-16 03:13:03 +08:00
yaojingang 291e649fac Centralize Skill IR artifact discovery 2026-06-16 03:12:10 +08:00
yaojingang e31eee53f3 Refresh Skill IR path lock reports 2026-06-16 02:55:34 +08:00
yaojingang c617e4719e Align Skill IR evidence paths 2026-06-16 02:54:52 +08:00
yaojingang a25567963e Refresh clean benchmark release lock 2026-06-16 02:46:51 +08:00
yaojingang aa72595e56 Refresh preflight review lock reports 2026-06-16 02:45:59 +08:00
yaojingang f6d3bb523f Add world-class preflight HTML cockpit 2026-06-16 02:45:01 +08:00
yaojingang 858d96b8c5 Refresh expanded evidence flow lock reports 2026-06-16 02:32:36 +08:00
yaojingang f682bf9376 Broaden release evidence refresh coverage 2026-06-16 02:32:01 +08:00
yaojingang a7f422e296 Refresh context-stable release lock reports 2026-06-16 02:26:39 +08:00
yaojingang 78904abae1 Stabilize context sizing around volatile reports 2026-06-16 02:26:04 +08:00
yaojingang 8b10217bbb Make context budget reports idempotent 2026-06-16 02:21:56 +08:00
yaojingang fc5f1dbca2 Govern context report freshness in release evidence 2026-06-16 02:17:02 +08:00
yaojingang ae9d65aeff Refresh preflight handoff release lock 2026-06-16 02:06:23 +08:00
yaojingang 713831ab3a Expose preflight submission kit handoff 2026-06-16 02:05:34 +08:00
yaojingang c91d01bc1b Refresh release flow evidence lock 2026-06-16 01:56:34 +08:00
yaojingang 959fcaee08 Harden release evidence flow checks 2026-06-16 01:56:03 +08:00
yaojingang 4187d92ac3 Refresh benchmark preflight release lock 2026-06-16 01:50:24 +08:00
yaojingang d3fb78f4fe Include preflight in benchmark reproducibility 2026-06-16 01:49:51 +08:00
yaojingang dd33d55b62 Refresh preflight release evidence lock 2026-06-16 01:41:09 +08:00
yaojingang 6713b56d6b Add world-class evidence preflight 2026-06-16 01:40:37 +08:00
yaojingang 7314c3c1c8 Refresh release flow consistency lock 2026-06-16 01:23:40 +08:00
yaojingang 0cc661195f Check release evidence flow consistency 2026-06-16 01:23:08 +08:00
yaojingang 0c6b0b8c13 Refresh complete release evidence lock 2026-06-16 01:15:51 +08:00
yaojingang ef36a74204 Document complete release evidence refresh flow 2026-06-16 01:15:22 +08:00
yaojingang bc999b9508 Refresh extracted consistency release lock 2026-06-16 01:09:34 +08:00
yaojingang a7960d4cfd Extract world-class evidence consistency checks 2026-06-16 01:08:23 +08:00
yaojingang 391821240b Refresh workflow coverage release lock 2026-06-16 00:58:42 +08:00
yaojingang 09518a4d86 Refresh workflow coverage report evidence 2026-06-16 00:58:16 +08:00
yaojingang 65e906d88e Check world-class evidence workflow coverage 2026-06-16 00:57:50 +08:00
yaojingang c9a7842991 Refresh report consistency release lock 2026-06-16 00:51:48 +08:00
yaojingang 0979c8753e Allow report consistency without dist 2026-06-16 00:51:19 +08:00
yaojingang bf1499d9b8 Refresh claim guard release lock 2026-06-16 00:48:45 +08:00
yaojingang b9b0ad18cf Check claim guard package surfaces 2026-06-16 00:48:16 +08:00
yaojingang cd933046c8 Refresh stable claim guard release lock 2026-06-16 00:41:47 +08:00
yaojingang ae5ce88ea7 Stabilize claim guard surface test 2026-06-16 00:41:20 +08:00
yaojingang a8d99a6afe Refresh package claim release lock 2026-06-16 00:39:12 +08:00
yaojingang d8e73d5b53 Guard package world-class claim surfaces 2026-06-16 00:38:47 +08:00
yaojingang f135ebcb89 Refresh clean release lock 2026-06-16 00:30:37 +08:00
yaojingang 92ff8bd10f Expand world-class claim guard coverage 2026-06-16 00:30:11 +08:00
yaojingang 03a0fc0107 Refresh clean architecture watchlist reports 2026-06-16 00:22:59 +08:00
yaojingang 71f1ebea17 Track architecture watchlist in Review Studio 2026-06-16 00:22:16 +08:00
yaojingang 909597f71d Guard Skill OS review evidence drift 2026-06-16 00:12:19 +08:00
yaojingang b280fb79e0 Refresh final reports for roadmap count alignment 2026-06-15 23:58:01 +08:00
yaojingang 2204e7ce7f Refresh evidence after roadmap count alignment 2026-06-15 23:57:18 +08:00
yaojingang 11fce1f339 Align world-class roadmap counts with ledger 2026-06-15 23:55:35 +08:00
yaojingang 0f51f74fb6 Refresh final reports for adaptive contract data 2026-06-15 23:48:03 +08:00
yaojingang dc7cc48a1d Refresh evidence for Review Studio adaptive data 2026-06-15 23:47:29 +08:00
yaojingang be0976ad30 Expose adaptive reports in Review Studio data 2026-06-15 23:46:57 +08:00
yaojingang 1af4f3cd42 Refresh evidence for adaptive report contracts 2026-06-15 23:44:32 +08:00
yaojingang a5a8f915d0 Add adaptive report contract mirrors 2026-06-15 23:43:52 +08:00
yaojingang f2c036eff4 Refresh final reports for world-class report contracts 2026-06-15 23:36:10 +08:00
yaojingang 51a946594a Refresh evidence for world-class report contracts 2026-06-15 23:35:33 +08:00
yaojingang 687aefebc2 Add world-class report contract mirrors 2026-06-15 23:34:48 +08:00
yaojingang 781fbe971e Refresh final reports for adaptive approval drafts 2026-06-15 23:25:43 +08:00
yaojingang b5c185deb5 Refresh evidence for adaptive approval drafts 2026-06-15 23:25:12 +08:00
yaojingang f324a78e29 Add adaptive approval draft workflow 2026-06-15 23:23:18 +08:00
yaojingang c971c02d87 Refresh final reports for adaptive baseline guard 2026-06-15 23:12:24 +08:00
yaojingang a0e7b5197d Refresh evidence for adaptive baseline guard 2026-06-15 23:12:07 +08:00
yaojingang b18a134497 Harden adaptive apply approval baselines 2026-06-15 23:11:31 +08:00
yaojingang 10a1b1d963 Refresh final reports after archive evidence 2026-06-15 23:05:06 +08:00
yaojingang afdd533271 Refresh archive evidence after review test update 2026-06-15 23:04:50 +08:00
yaojingang f9ba9b7b53 Update review studio coverage expectations 2026-06-15 23:04:05 +08:00
yaojingang 16ee1d80de Refresh final adaptive apply reports 2026-06-15 23:01:20 +08:00
yaojingang 14ad95850f Refresh claim guard surfaces 2026-06-15 23:00:42 +08:00
yaojingang b261f089c3 Refresh adaptive apply evidence 2026-06-15 23:00:12 +08:00
yaojingang 817aef179f Add approval-gated adaptive apply 2026-06-15 22:58:21 +08:00
yaojingang 73968fa404 Refresh final clean architecture evidence 2026-06-15 22:40:00 +08:00
yaojingang adba42a7c7 Refresh package hash after conformance fixture fix 2026-06-15 22:39:27 +08:00
yaojingang a291f4f104 Harden conformance renamed-checkout fixture 2026-06-15 22:37:39 +08:00
yaojingang 7353612be2 Refresh clean CLI architecture evidence 2026-06-15 22:36:08 +08:00
yaojingang 0e6327ca93 Refresh CLI architecture evidence artifacts 2026-06-15 22:35:36 +08:00
yaojingang e3583647c7 Refactor Yao CLI command domains 2026-06-15 22:32:57 +08:00
yaojingang a266ab7c8f Refresh clean conformance evidence 2026-06-15 22:18:38 +08:00
yaojingang 2df5c9acd0 Allow conformance checks in renamed checkouts 2026-06-15 22:18:13 +08:00
yaojingang 6e2dfd48d0 Refresh clean archive identity evidence 2026-06-15 22:16:15 +08:00
yaojingang 27a5c12008 Use package manifest name for archives 2026-06-15 22:15:53 +08:00
yaojingang db1b24cbda Refresh clean renamed-checkout evidence 2026-06-15 22:12:01 +08:00
yaojingang c169e61dd4 Find skill IR in renamed checkouts 2026-06-15 22:11:41 +08:00
yaojingang c1505fa6f1 Refresh clean portability evidence 2026-06-15 22:09:48 +08:00
yaojingang ad40ed8693 Accept explicit portability report skill path 2026-06-15 22:08:46 +08:00
yaojingang 84b761abce Refresh clean evidence consistency reports 2026-06-15 22:00:41 +08:00
yaojingang a5dab4779d Add cross-report evidence consistency gate 2026-06-15 21:58:35 +08:00
yaojingang effbf3f74c Refresh clean report evidence 2026-06-15 21:40:52 +08:00
yaojingang 038891715d Add first-class skill interpretation report 2026-06-15 21:34:45 +08:00
yaojingang 5495734e7e Refresh adaptive clean-lock evidence 2026-06-15 21:09:55 +08:00
yaojingang aacf3282f5 Add proposal-only adaptive iteration loop 2026-06-15 21:09:25 +08:00
yaojingang 180dbf4a41 Refresh clean-lock extension evidence 2026-06-15 19:09:40 +08:00
yaojingang ee2130176f Refresh generated evidence after extension tracking 2026-06-15 19:09:06 +08:00
yaojingang f0be4dba34 Track 2.0 reference extension gaps 2026-06-15 19:07:51 +08:00
yaojingang 7acc6d9cf7 Refresh clean-lock overview evidence 2026-06-15 18:56:44 +08:00
yaojingang 5f187cdb46 Refresh package evidence after overview helper split 2026-06-15 18:54:51 +08:00
yaojingang f2fdcce071 Improve skill overview world-class roadmap 2026-06-15 18:47:15 +08:00
yaojingang c6584482c6 Add world-class readiness to overview report 2026-06-15 18:31:29 +08:00
yaojingang f3e7831a3b Improve bilingual skill overview reports 2026-06-15 18:11:09 +08:00
yaojingang 78430c6b7f Add world-class evidence actions to Review Studio 2026-06-15 17:42:51 +08:00
yaojingang 48eb0d10ce Fix skill overview metrics layout 2026-06-15 17:27:48 +08:00
yaojingang 7a6a172d4a chore: refresh overview clean lock 2026-06-15 17:12:34 +08:00
yaojingang 30a787a5e6 chore: refresh report package evidence 2026-06-15 17:11:56 +08:00
yaojingang 1c225f1bde feat: reflow skill overview metrics report 2026-06-15 17:10:14 +08:00
yaojingang 3de19f3d82 chore: refresh review studio runbook clean lock 2026-06-14 15:20:02 +08:00
yaojingang cd70c64a4c chore: refresh review studio runbook evidence 2026-06-14 15:19:25 +08:00
yaojingang b7ec1ac393 feat: show evidence runbooks in review studio 2026-06-14 15:16:56 +08:00
yaojingang b6a4a8a50d chore: refresh evidence runbook clean lock 2026-06-14 15:07:49 +08:00
yaojingang 2dc8bad3e0 chore: refresh evidence runbook artifacts 2026-06-14 15:07:01 +08:00
yaojingang 44fe310092 feat: surface world-class evidence runbooks 2026-06-14 15:03:15 +08:00
yaojingang 537cd89ed6 chore: refresh shared html rendering clean-lock evidence 2026-06-14 14:48:59 +08:00
yaojingang 4e9a516485 chore: refresh shared html rendering evidence 2026-06-14 14:48:05 +08:00
yaojingang 6f5f4db4a7 refactor: share falsey-safe html rendering 2026-06-14 14:46:44 +08:00
yaojingang 7b210a5417 chore: refresh output review clean-lock evidence 2026-06-14 14:36:45 +08:00
yaojingang a39964faef chore: refresh output review falsey evidence 2026-06-14 14:36:07 +08:00
yaojingang f210f20c46 fix: preserve falsey values in output review HTML 2026-06-14 14:34:47 +08:00
yaojingang 59a2d644e3 chore: refresh falsey world-class clean-lock evidence 2026-06-14 14:27:48 +08:00
yaojingang 7ae32ed87e chore: refresh falsey world-class HTML evidence 2026-06-14 14:27:15 +08:00
yaojingang fd5a790df9 fix: preserve falsey values in world-class HTML 2026-06-14 14:26:13 +08:00
yaojingang 5651053b8b test: avoid fixed runbook blocked count 2026-06-14 14:18:23 +08:00
yaojingang 7bbc75e4f3 chore: refresh runbook source action clean-lock evidence 2026-06-14 14:16:53 +08:00
yaojingang a5d6a39782 chore: refresh runbook source action evidence 2026-06-14 14:16:23 +08:00
yaojingang 0fb2ebdeea feat: expose next source actions in world-class runbook 2026-06-14 14:15:28 +08:00
yaojingang 727c0239ed chore: refresh public claim source check evidence 2026-06-14 14:08:35 +08:00
yaojingang 6cb499cb50 feat: block public claims on incomplete source checks 2026-06-14 14:08:00 +08:00
yaojingang 02a90704fd chore: refresh top-level source maturity clean-lock evidence 2026-06-14 14:01:59 +08:00
yaojingang c2f5672b2c chore: refresh top-level source maturity evidence 2026-06-14 14:01:23 +08:00
yaojingang 88cec0e51e feat: surface source check maturity in top reports 2026-06-14 14:00:26 +08:00
yaojingang ef289e3429 chore: refresh ledger clean-lock evidence 2026-06-14 13:50:55 +08:00
yaojingang 9067c9e211 chore: refresh ledger source check evidence 2026-06-14 13:50:31 +08:00
yaojingang 2abc2252e0 feat: expose source checks in world-class ledger 2026-06-14 13:49:13 +08:00
yaojingang a619a17ea2 chore: refresh source check clean-lock evidence 2026-06-14 13:42:51 +08:00
yaojingang 0936ce727e chore: refresh source check evidence reports 2026-06-14 13:42:18 +08:00
yaojingang 6ca6f9d609 feat: share world-class source evidence checks 2026-06-14 13:41:22 +08:00
yaojingang 30ca020403 chore: refresh source snapshot clean-lock evidence 2026-06-14 13:27:58 +08:00
yaojingang 7cbbf58078 chore: refresh source snapshot package evidence 2026-06-14 13:27:19 +08:00
yaojingang b7c779453d feat: add source evidence snapshot to submission kit 2026-06-14 13:24:23 +08:00
yaojingang 27a2ff7e7a chore: refresh CI-compatible clean-lock evidence 2026-06-14 13:16:13 +08:00
yaojingang a364f5766f chore: refresh CI-compatible package evidence 2026-06-14 13:15:54 +08:00
yaojingang 35e194ae06 test: allow missing dist artifacts in submission kit check 2026-06-14 13:15:05 +08:00
yaojingang 7e5cafbcac chore: refresh submission kit clean-lock evidence 2026-06-14 13:08:58 +08:00
yaojingang ef0089170c chore: refresh submission kit package evidence 2026-06-14 13:08:25 +08:00
yaojingang 6fc7a130ce feat: add world-class submission artifact checklist 2026-06-14 13:07:12 +08:00
yaojingang e83ee842b2 chore: refresh clean-lock report evidence 2026-06-14 12:54:50 +08:00
yaojingang b9d502bc96 chore: refresh package evidence 2026-06-14 12:53:54 +08:00
yaojingang 38c5785ff3 docs: document clean-lock report refresh 2026-06-14 12:52:36 +08:00
yaojingang ec9474d0a6 docs: refresh review viewer evidence lock 2026-06-14 12:40:28 +08:00
yaojingang 17db8f0498 docs: refresh review viewer package evidence 2026-06-14 12:39:38 +08:00
yaojingang bfc1ac39d7 fix: refresh review viewer in report workflow 2026-06-14 12:38:28 +08:00
yaojingang 0a482d3529 docs: refresh submission workflow review lock 2026-06-14 12:26:53 +08:00
yaojingang 328be185f6 docs: refresh submission command evidence 2026-06-14 12:26:04 +08:00
yaojingang b186b6ab47 docs: align world-class submission commands 2026-06-14 12:24:45 +08:00
yaojingang c8b2fdf886 docs: refresh submission workflow review lock 2026-06-14 12:11:16 +08:00
yaojingang 07274b4c50 docs: refresh world-class submission evidence 2026-06-14 12:10:31 +08:00
yaojingang e03d5b2c74 fix: preserve world-class submission directory context 2026-06-14 12:08:54 +08:00
yaojingang 22c7145db7 docs: refresh governed review lock 2026-06-14 11:58:00 +08:00
yaojingang ab58c97bce docs: refresh governed mode evidence 2026-06-14 11:56:07 +08:00
yaojingang 3b88d5c4bf docs: clarify governed operating mode 2026-06-14 11:55:00 +08:00
yaojingang c2d15206e2 docs: refresh review studio atlas evidence 2026-06-14 11:45:23 +08:00
yaojingang fbaa3c8212 docs: refresh atlas telemetry evidence 2026-06-14 11:44:38 +08:00
yaojingang fac15545b0 feat: derive atlas no-route opportunities from telemetry 2026-06-14 11:42:54 +08:00
yaojingang a25be312bc docs: refresh review studio waiver page 2026-06-14 11:34:38 +08:00
yaojingang 78f94e47fd docs: refresh review studio waiver evidence 2026-06-14 11:33:51 +08:00
yaojingang 9184fc4807 feat: show waiver candidates in review studio 2026-06-14 11:32:40 +08:00
yaojingang 20a3e5a60b docs: refresh review studio claim evidence 2026-06-14 11:20:10 +08:00
yaojingang 1488957a6c docs: refresh review studio package evidence 2026-06-14 11:19:18 +08:00
yaojingang 17000ab0fd feat: surface public claim gate in review studio 2026-06-14 11:17:35 +08:00
yaojingang 6fd49c90b1 docs: refresh benchmark claim boundary 2026-06-14 11:07:14 +08:00
yaojingang 340cc9773b feat: gate public benchmark claims 2026-06-14 11:06:14 +08:00
yaojingang 2ea9aa8495 feat: gate intake readiness on source evidence 2026-06-14 10:57:14 +08:00
yaojingang 985eaee14b feat: reject placeholder evidence submissions 2026-06-14 10:43:19 +08:00
yaojingang 3f0b262e5f feat: require world-class evidence artifacts 2026-06-14 10:32:25 +08:00
yaojingang d808071fb5 feat: govern deferred resource budget 2026-06-14 10:16:09 +08:00
yaojingang dfab5924c3 refactor: split review studio action guidance 2026-06-14 09:55:58 +08:00
yaojingang c6ee987bb5 feat: surface deferred resource context cost 2026-06-14 09:29:05 +08:00
yaojingang f03189a8b4 docs: refresh benchmark evidence bundle reports 2026-06-14 09:07:33 +08:00
yaojingang 165ef11daf feat: anchor benchmark reproducibility to evidence bundle 2026-06-14 09:03:26 +08:00
yaojingang c319a6fe99 feat: require validated world-class evidence submissions 2026-06-14 08:53:16 +08:00
yaojingang 48f2826b8c feat: verify world-class intake artifact integrity 2026-06-14 08:33:58 +08:00
yaojingang bd7f1d8ccc feat: include world-class runbook in benchmark evidence 2026-06-14 08:19:16 +08:00
yaojingang 5d1d3bbd30 feat: add world-class operator runbook 2026-06-14 08:06:56 +08:00
yaojingang 08347d5c2c feat: add world-class evidence cockpit 2026-06-14 07:45:14 +08:00
yaojingang 6b71aa2fb1 feat: add output review cockpit 2026-06-14 07:33:39 +08:00
yaojingang 834665b73c feat: link installer enforcement evidence 2026-06-14 07:16:41 +08:00
yaojingang 0cf7f32e32 feat: add output review kit 2026-06-14 06:56:44 +08:00
yaojingang ecdb16dd90 feat: add world-class submission review queue 2026-06-14 06:38:16 +08:00
yaojingang 30539bed7a feat: add world-class submission kit 2026-06-14 06:22:09 +08:00
yaojingang b540f580b3 feat: surface world-class submission state 2026-06-14 06:01:09 +08:00
yaojingang c5e7b05faa feat: add review waiver candidate guidance 2026-06-14 05:51:05 +08:00
yaojingang 8af7d75347 feat: add output review checklist 2026-06-14 05:40:37 +08:00
yaojingang 810885d70e feat: add world-class evidence intake checklist 2026-06-14 05:29:26 +08:00
yaojingang 088904f519 refactor: split yao creation commands 2026-06-14 05:16:15 +08:00
yaojingang 628acc5c35 refactor: split review viewer data assembly 2026-06-14 02:28:03 +08:00
yaojingang 479b098ccf refactor: split review studio data helpers 2026-06-14 02:18:09 +08:00
yaojingang d7018dac55 refactor: split yao cli report commands 2026-06-14 02:05:31 +08:00
yaojingang 7afde5ebaf feat: add architecture maintainability review gate 2026-06-14 01:54:00 +08:00
yaojingang ae0f72cccb feat: add python compatibility review gate 2026-06-14 01:35:36 +08:00
yaojingang 4737358f3c feat: add python compatibility gate 2026-06-14 01:21:21 +08:00
yaojingang ee4879f296 fix: keep claim guard compatible with python 3.11 2026-06-14 01:03:21 +08:00
yaojingang 2afb802a87 feat: guard world class completion claims 2026-06-14 01:00:44 +08:00
yaojingang c1c85093d1 feat: add world class evidence intake gate 2026-06-14 00:45:12 +08:00
yaojingang 60995ed569 feat: add skill os blueprint coverage audit 2026-06-14 00:25:01 +08:00
yaojingang 95a91bcb26 feat: add world class evidence details to review studio 2026-06-14 00:07:33 +08:00
yaojingang acc2cc2571 feat: surface world class evidence in review studio 2026-06-13 23:56:49 +08:00
yaojingang f3b23ea9b9 feat: add world class evidence ledger 2026-06-13 23:42:31 +08:00
yaojingang be3fe00161 feat: add benchmark reproducibility gate 2026-06-13 23:25:47 +08:00
yaojingang c2507af526 feat: add world class evidence plan 2026-06-13 23:10:35 +08:00
yaojingang 1b54596a82 feat: add skill os audit gate 2026-06-13 22:52:24 +08:00
yaojingang 164f33f818 feat: add telemetry native host 2026-06-13 22:33:28 +08:00
yaojingang 313fe0b37c feat: add telemetry hook recipes 2026-06-13 22:11:26 +08:00
yaojingang 8a10c43e86 feat: add telemetry emit hook 2026-06-13 21:56:31 +08:00
yaojingang 722b631412 feat: import external telemetry events 2026-06-13 21:39:20 +08:00
yaojingang d8a9fa6ebc feat: add opt-in CLI telemetry capture 2026-06-13 21:28:55 +08:00
yaojingang deedd557e6 feat: gate local install sync with preflight 2026-06-13 21:16:39 +08:00
yaojingang d9514412f0 feat: enforce permissions during install simulation 2026-06-13 21:01:27 +08:00
yaojingang e8cebf93bb fix: preserve blind review answer integrity 2026-06-13 20:44:46 +08:00
yaojingang 74541dd689 test: build drift evidence before atlas review 2026-06-13 20:34:51 +08:00
yaojingang e2933ce516 feat: surface telemetry drift in skill atlas 2026-06-13 20:29:01 +08:00
yaojingang 36dc46ab9b feat: package vscode skill target 2026-06-13 20:15:50 +08:00
yaojingang f42bed2c98 feat: add provider-backed output eval runner 2026-06-13 20:00:50 +08:00
yaojingang 233a8130b1 fix: expose output review decision template 2026-06-13 19:30:58 +08:00
yaojingang 1e0837122d fix: surface pending output review in studio 2026-06-13 19:24:33 +08:00
yaojingang e5c85b394f refactor: split meta skill CLI and review gates 2026-06-13 19:17:27 +08:00
137 changed files with 3974 additions and 12772 deletions
File diff suppressed because it is too large Load Diff
Binary file not shown.

Before

Width:  |  Height:  |  Size: 771 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 685 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 MiB

-3
View File
@@ -23,7 +23,6 @@ Use `make ci-test` as the default full verification command before calling a cha
Common focused checks:
- CLI changes: `python3 tests/verify_yao_cli.py`
- Operator UX changes: `python3 tests/verify_operator_ux.py`
- Skill overview report changes: `python3 tests/verify_skill_overview.py`
- Review Studio changes: `python3 tests/verify_review_studio.py`
- Trust or script inventory changes: `python3 tests/verify_trust_check.py`
@@ -120,8 +119,6 @@ Clean test-only scratch directories after verification with `find tests -maxdept
- `scripts/skill_report_model.py`, `scripts/skill_report_metrics.py`, `scripts/skill_report_charts.py`: skill overview data model, scoring, and inline SVG chart generation.
- `scripts/yao_cli_config.py`: CLI target maps, archetype heuristics, diagnosis copy, and side-effect-free shaping helpers.
- `scripts/yao_cli_parser.py`: CLI argparse command surface, flags, choices, and command handler binding.
- `scripts/yao_cli_operator_commands.py`: read-only operator diagnostics for active install status, localized homepage sync, and PR review reports. Keep install checks non-mutating, docs sync explicit, and PR review free of merge/write actions.
- `scripts/yao_cli_parser_operator.py`: argparse surface for operator UX commands. Keep command names stable and route all behavior into `yao_cli_operator_commands.py`.
- `scripts/yao_cli_telemetry.py`: opt-in metadata-only CLI run telemetry. Keep it free of prompt, argument, output, transcript, note, or message capture.
- `scripts/import_telemetry_events.py`: external telemetry importer. Validate the whole input before appending events, and keep raw prompt/output/transcript/message/note fields blocked.
- `scripts/emit_telemetry_event.py`: external client telemetry emitter. It may append one normalized metadata event to a local spool, but must never accept or write raw prompt, output, transcript, message, note, argument, or private content.
+4 -11
View File
@@ -1,12 +1,8 @@
PYTHON ?= python3
REQUIRED_PYTHON_VERSION ?= 3.11
LOCAL_SKILL_INSTALL_DIR ?= $(HOME)/.agents/skills.disabled/yao-meta-skill
ACTIVE_SKILL_INSTALL_DIR ?= $(HOME)/.agents/skills/yao-meta-skill
.PHONY: python-version-check eval eval-suite route-scorecard route-confusion-check description-optimization judge-blind-eval description-optimization-check promotion-check python-compat-check architecture-maintainability-check yao-cli-check yao-cli-world-class-check operator-ux-check skill-overview-check skill-interpretation-check skill-report-metrics-check skill-report-charts-check html-rendering-check skill-ir-check compiler-check output-eval-check output-execution-check output-review-kit-check output-review-adjudication-check runtime-conformance-check runtime-permission-check trust-check skill-atlas-check registry-audit-check package-verify-check install-simulation-check upgrade-check review-viewer-check review-studio-check skill-os2-audit-check skill-os2-coverage-check world-class-evidence-check world-class-ledger-check world-class-intake-check world-class-submission-kit-check world-class-preflight-check world-class-submission-review-check world-class-runbook-check world-class-claim-guard-check benchmark-reproducibility-check evidence-consistency-check feedback-check adaptation-safety-check skillops-opportunity-check daily-skillops-check weekly-curator-check adoption-drift-check telemetry-import-check telemetry-emit-check telemetry-hooks-check telemetry-native-host-check review-waivers-check review-annotations-check baseline-compare-check reference-scan-check github-benchmark-scan-check intent-confidence-check reference-synthesis-check output-risk-profile-check artifact-design-profile-check prompt-quality-profile-check system-model-check iteration-directions-check description-drift-history iteration-ledger results-panel regression-history context-reports portability-report portability-check failure-regression-check package-check package-failure-check security-boundary-check local-install-sync-check snapshot-check validate lint governance-check resource-boundary-check quality-check sync-local-install sync-active-install test ci-test clean
python-version-check:
@$(PYTHON) -c 'import sys; required=tuple(map(int, "$(REQUIRED_PYTHON_VERSION)".split("."))); actual=sys.version_info[:2]; raise SystemExit(0 if actual >= required else "Python {}.{}+ is required; {}.{} is active. Set PYTHON=/path/to/python{} or create a Python {} virtualenv.".format(*required, *actual, "$(REQUIRED_PYTHON_VERSION)", "$(REQUIRED_PYTHON_VERSION)"))'
.PHONY: eval eval-suite route-scorecard route-confusion-check description-optimization judge-blind-eval description-optimization-check promotion-check python-compat-check architecture-maintainability-check yao-cli-check yao-cli-world-class-check skill-overview-check skill-interpretation-check skill-report-metrics-check skill-report-charts-check html-rendering-check skill-ir-check compiler-check output-eval-check output-execution-check output-review-kit-check output-review-adjudication-check runtime-conformance-check runtime-permission-check trust-check skill-atlas-check registry-audit-check package-verify-check install-simulation-check upgrade-check review-viewer-check review-studio-check skill-os2-audit-check skill-os2-coverage-check world-class-evidence-check world-class-ledger-check world-class-intake-check world-class-submission-kit-check world-class-preflight-check world-class-submission-review-check world-class-runbook-check world-class-claim-guard-check benchmark-reproducibility-check evidence-consistency-check feedback-check adaptation-safety-check skillops-opportunity-check daily-skillops-check weekly-curator-check adoption-drift-check telemetry-import-check telemetry-emit-check telemetry-hooks-check telemetry-native-host-check review-waivers-check review-annotations-check baseline-compare-check reference-scan-check github-benchmark-scan-check intent-confidence-check reference-synthesis-check output-risk-profile-check artifact-design-profile-check prompt-quality-profile-check system-model-check iteration-directions-check description-drift-history iteration-ledger results-panel regression-history context-reports portability-report portability-check failure-regression-check package-check package-failure-check security-boundary-check local-install-sync-check snapshot-check validate lint governance-check resource-boundary-check quality-check sync-local-install sync-active-install test ci-test clean
eval:
$(PYTHON) scripts/trigger_eval.py --description-file evals/improved_description.txt --cases evals/trigger_cases.json --baseline-description-file evals/baseline_description.txt
@@ -44,9 +40,6 @@ yao-cli-check:
yao-cli-world-class-check:
$(PYTHON) tests/verify_yao_cli_world_class.py
operator-ux-check:
$(PYTHON) tests/verify_operator_ux.py
skill-overview-check:
$(PYTHON) tests/verify_skill_overview.py
@@ -273,11 +266,11 @@ sync-local-install: package-check
sync-active-install: package-check
$(PYTHON) scripts/sync_local_install.py --install-dir "$(ACTIVE_SKILL_INSTALL_DIR)"
test: python-version-check eval eval-suite route-scorecard route-confusion-check description-optimization description-optimization-check promotion-check python-compat-check architecture-maintainability-check yao-cli-check operator-ux-check skill-overview-check skill-interpretation-check skill-report-metrics-check skill-report-charts-check html-rendering-check skill-ir-check compiler-check output-eval-check output-execution-check output-review-adjudication-check runtime-conformance-check runtime-permission-check trust-check skill-atlas-check registry-audit-check package-verify-check install-simulation-check upgrade-check review-viewer-check review-studio-check skill-os2-audit-check skill-os2-coverage-check world-class-evidence-check world-class-ledger-check world-class-intake-check world-class-submission-kit-check world-class-preflight-check world-class-submission-review-check world-class-runbook-check world-class-claim-guard-check benchmark-reproducibility-check evidence-consistency-check feedback-check adaptation-safety-check skillops-opportunity-check daily-skillops-check weekly-curator-check adoption-drift-check telemetry-import-check telemetry-emit-check telemetry-hooks-check telemetry-native-host-check review-waivers-check review-annotations-check baseline-compare-check reference-scan-check github-benchmark-scan-check intent-confidence-check reference-synthesis-check output-risk-profile-check artifact-design-profile-check prompt-quality-profile-check system-model-check iteration-directions-check description-drift-history iteration-ledger regression-history context-reports portability-report portability-check failure-regression-check package-check package-failure-check security-boundary-check local-install-sync-check snapshot-check validate lint governance-check resource-boundary-check quality-check
test: eval eval-suite route-scorecard route-confusion-check description-optimization description-optimization-check promotion-check python-compat-check architecture-maintainability-check yao-cli-check skill-overview-check skill-interpretation-check skill-report-metrics-check skill-report-charts-check html-rendering-check skill-ir-check compiler-check output-eval-check output-execution-check output-review-adjudication-check runtime-conformance-check runtime-permission-check trust-check skill-atlas-check registry-audit-check package-verify-check install-simulation-check upgrade-check review-viewer-check review-studio-check skill-os2-audit-check skill-os2-coverage-check world-class-evidence-check world-class-ledger-check world-class-intake-check world-class-submission-kit-check world-class-preflight-check world-class-submission-review-check world-class-runbook-check world-class-claim-guard-check benchmark-reproducibility-check evidence-consistency-check feedback-check adaptation-safety-check skillops-opportunity-check daily-skillops-check weekly-curator-check adoption-drift-check telemetry-import-check telemetry-emit-check telemetry-hooks-check telemetry-native-host-check review-waivers-check review-annotations-check baseline-compare-check reference-scan-check github-benchmark-scan-check intent-confidence-check reference-synthesis-check output-risk-profile-check artifact-design-profile-check prompt-quality-profile-check system-model-check iteration-directions-check description-drift-history iteration-ledger regression-history context-reports portability-report portability-check failure-regression-check package-check package-failure-check security-boundary-check local-install-sync-check snapshot-check validate lint governance-check resource-boundary-check quality-check
ci-test: python-version-check
ci-test:
$(PYTHON) scripts/ci_test.py
clean:
rm -rf dist tests/tmp tests/tmp_snapshot tests/tmp_cli tests/tmp_operator_ux tests/tmp_python_compat tests/tmp_architecture_maintainability tests/tmp_skill_overview tests/tmp_skill_interpretation tests/tmp_skill_report_metrics tests/tmp_skill_report_charts tests/tmp_skill_ir tests/tmp_compile_skill tests/tmp_output_eval tests/tmp_output_execution tests/tmp_output_review_adjudication tests/tmp_conformance tests/tmp_runtime_permission tests/tmp_trust tests/tmp_skill_atlas tests/tmp_registry tests/tmp_package_verification tests/tmp_install_simulation tests/tmp_upgrade_check tests/tmp_reference_scan tests/tmp_iteration_directions tests/tmp_review_viewer tests/tmp_review_studio tests/tmp_skill_os2_audit tests/tmp_skill_os2_coverage tests/tmp_world_class_evidence tests/tmp_world_class_evidence_ledger tests/tmp_world_class_evidence_intake tests/tmp_world_class_submission_review tests/tmp_world_class_operator_runbook tests/tmp_world_class_claim_guard tests/tmp_benchmark_reproducibility tests/tmp_evidence_consistency tests/tmp_feedback tests/tmp_daily_skillops tests/tmp_weekly_curator tests/tmp_adoption_drift tests/tmp_telemetry_import tests/tmp_telemetry_emit tests/tmp_telemetry_hooks tests/tmp_telemetry_native_host tests/tmp_review_waivers tests/tmp_review_annotations tests/tmp_github_benchmark_scan tests/tmp_intent_confidence tests/tmp_reference_synthesis tests/tmp_output_risk_profile tests/tmp_artifact_design_profile tests/tmp_prompt_quality_profile tests/tmp_system_model tests/tmp_security tests/tmp_baseline_compare.json tests/tmp_baseline_compare.md
rm -rf dist tests/tmp tests/tmp_snapshot tests/tmp_cli tests/tmp_python_compat tests/tmp_architecture_maintainability tests/tmp_skill_overview tests/tmp_skill_interpretation tests/tmp_skill_report_metrics tests/tmp_skill_report_charts tests/tmp_skill_ir tests/tmp_compile_skill tests/tmp_output_eval tests/tmp_output_execution tests/tmp_output_review_adjudication tests/tmp_conformance tests/tmp_runtime_permission tests/tmp_trust tests/tmp_skill_atlas tests/tmp_registry tests/tmp_package_verification tests/tmp_install_simulation tests/tmp_upgrade_check tests/tmp_reference_scan tests/tmp_iteration_directions tests/tmp_review_viewer tests/tmp_review_studio tests/tmp_skill_os2_audit tests/tmp_skill_os2_coverage tests/tmp_world_class_evidence tests/tmp_world_class_evidence_ledger tests/tmp_world_class_evidence_intake tests/tmp_world_class_submission_review tests/tmp_world_class_operator_runbook tests/tmp_world_class_claim_guard tests/tmp_benchmark_reproducibility tests/tmp_evidence_consistency tests/tmp_feedback tests/tmp_daily_skillops tests/tmp_weekly_curator tests/tmp_adoption_drift tests/tmp_telemetry_import tests/tmp_telemetry_emit tests/tmp_telemetry_hooks tests/tmp_telemetry_native_host tests/tmp_review_waivers tests/tmp_review_annotations tests/tmp_github_benchmark_scan tests/tmp_intent_confidence tests/tmp_reference_synthesis tests/tmp_output_risk_profile tests/tmp_artifact_design_profile tests/tmp_prompt_quality_profile tests/tmp_system_model tests/tmp_security tests/tmp_baseline_compare.json tests/tmp_baseline_compare.md
find . -type d -name __pycache__ -prune -exec rm -rf {} +
+12 -90
View File
@@ -10,64 +10,9 @@
`YAO` stands for `Yielding AI Outcomes`: the goal is not to generate more prompt text, but to produce reusable AI assets and real operational outcomes.
`yao-meta-skill` creates, evaluates, packages, and governs reusable agent skills. The 1.0 line focused on turning repeated workflows into installable, readable, cross-platform skill packages. The 2.0 line expands that factory into a Skill OS: a governed system for modeling a skill once, compiling it for multiple targets, testing its behavior, reviewing its release evidence, and tracking the next iteration.
`yao-meta-skill` is a lightweight but rigorous system for creating, evaluating, packaging, and governing reusable agent skills.
[Quick Start](#quick-start) · [Skill OS 2.0](#skill-os-20-upgrade) · [1.0 vs 2.0](#from-10-to-20) · [Operator UX](#operator-ux-commands) · [Benchmark](#weighted-quality-benchmark) · [Examples](examples/README.md) · [Evals](evals/README.md) · [Failure Library](failures/README.md) · [Method Doctrine](#method-doctrine)
## Skill OS 2.0 Upgrade
Skill OS 2.0 keeps the original promise of `yao-meta-skill`, but makes the package lifecycle more explicit. Instead of stopping at `SKILL.md`, it adds a semantic contract, target compilers, evaluation evidence, release gates, and operation reports around the skill.
- **Skill IR**: a platform-neutral intermediate representation for intent, triggers, inputs, outputs, boundaries, references, and expected artifacts.
- **Target compilers and adapters**: generated surfaces for OpenAI, Claude, generic agent skills, Agent Skills compatible packages, and VS Code-oriented workflows.
- **Output Eval Lab**: trigger checks, output assertions, execution evidence, timing and token evidence, benchmark reproducibility, blind-review packs, answer keys, and adjudication reports.
- **Review Studio 2.0**: a single HTML gate page for intent, triggers, output eval, context cost, runtime checks, trust, Skill Atlas signals, adoption drift, waivers, annotations, release evidence, warnings, blockers, and fix actions.
- **Evidence and release governance**: evidence consistency checks, package verification, install simulation, runtime permission probes, world-class evidence intake, world-class ledger, operator runbook, and public claim guard.
- **SkillOps loop**: metadata-only adoption drift, telemetry hooks, adaptive proposals, daily and weekly curator reports, and portfolio-level drift signals.
Current posture: the repository is ready for beta and external testing, while stronger public "world-class" claims remain evidence-gated. Provider-backed production evidence, human blind-review evidence, native permission execution, and real-client telemetry are tracked as separate evidence tasks instead of being treated as completed work.
See the companion artifacts:
- [Visual 1.0 vs 2.0 comparison report](.previews/yao-meta-skill-2-comparison/index.html)
- [Chinese desktop preview](.previews/yao-meta-skill-2-comparison/yao-meta-skill-1-vs-2.png)
- [English desktop preview](.previews/yao-meta-skill-2-comparison/yao-meta-skill-1-vs-2-en.png)
## From 1.0 to 2.0
| Dimension | 1.0 focus | 2.0 upgrade |
| --- | --- | --- |
| Product role | Create, refactor, evaluate, and package reusable skills. | Govern the full lifecycle of a skill: creation, compilation, evaluation, review, release, telemetry, and iteration. |
| Architecture | `SKILL.md`, `agents/interface.yaml`, manifest files, and report artifacts. | Skill IR, target compilers, adapters, gate contracts, evidence ledgers, release locks, and action-oriented review pages. |
| Cross-platform delivery | OpenAI, Claude, and generic package targets. | Adds broader Agent Skills and VS Code-oriented compatibility, with registry-readable compatibility records. |
| Quality model | Trigger and structure checks plus report-based review. | Output eval, benchmark reproducibility, execution evidence, failure disclosure, blind-review packs, and evidence consistency checks. |
| Report experience | Overview HTML and first-pass review pages. | Bilingual Skill Overview v2, Review Studio 2.0, reviewer annotations, action cards, charts, and audit-oriented report contracts. |
| Release boundary | Package output with basic validation. | Package verification, install simulation, runtime permission probes, release locks, public claim guard, and operator runbooks. |
| Operating loop | Manual feedback and local iteration. | Adoption drift, metadata telemetry, SkillOps reports, adaptive proposals, and portfolio-level drift detection. |
## 2.0 Use Cases
- **Create a new skill from repeated work**: start with a workflow note, prompt set, transcript, runbook, or document pattern, then generate a package with a lean entrypoint, explicit inputs and outputs, references, reports, and the lightest justified gates.
- **Upgrade a personal skill into a team asset**: add interface contracts, manifests, target adapters, trust checks, output evals, reviewer waivers, release notes, and Review Studio evidence before other people depend on the skill.
- **Prepare a skill for beta release**: run package verification, install simulation, compatibility checks, runtime permission probes, and evidence consistency checks, then separate beta readiness from stronger public claims.
- **Keep a skill useful after release**: use metadata-only telemetry, adoption drift, feedback logs, SkillOps reports, and adaptive proposals to decide whether the next move should be documentation, an eval, a skill patch, or a governance update.
- **Compare with other meta-skill approaches**: keep Anthropic/OpenAI-style conversational creation and lean instruction writing where they fit, then use `yao-meta-skill` when the package needs evidence, portability, release gates, and repeatable maintenance.
## Operator UX Commands
These read-only helper commands turn common maintainer questions into repeatable diagnostics:
```bash
python3 scripts/yao.py install-status --expected-source .
python3 scripts/yao.py localized-doc-sync-check
python3 scripts/yao.py pr-review-report 4 --repo yaojingang/yao-meta-skill
```
- `install-status` explains whether the active skill is coming from `.codex/skills`, `.agents/skills`, or the disabled mirror, and flags duplicate active installs.
- `localized-doc-sync-check` verifies that the Chinese README carries the public homepage sections that were added to the English README.
- `pr-review-report` reads GitHub PR metadata, changed files, status checks, and suggested local commands without merging or mutating the PR.
## Capability Surface
[Quick Start](#quick-start) · [Examples](examples/README.md) · [Evals](evals/README.md) · [Failure Library](failures/README.md) · [Method Doctrine](#method-doctrine)
It turns rough workflows, transcripts, prompts, notes, and runbooks into reusable skill packages with:
@@ -112,30 +57,23 @@ It turns rough workflows, transcripts, prompts, notes, and runbooks into reusabl
## Architecture
Hero view: Skill OS 2.0 turns messy operational input into a governed, reusable skill package through a model, compile, evaluate, release, and operate loop.
Hero view: turn messy operational input into a governed, reusable skill package through one compact flow.
```mermaid
flowchart LR
A["Inputs<br/>workflow / prompt / transcript / docs / notes"] --> B["Intent model<br/>job / outputs / exclusions / standards"]
B --> C["Skill IR<br/>trigger / contracts / resources / evidence"]
C --> D["Skill package<br/>SKILL.md / references / scripts / reports"]
C --> E["Target compilers<br/>OpenAI / Claude / generic / Agent Skills / VS Code"]
D --> F["Eval Lab<br/>trigger / output / benchmark / runtime"]
E --> F
F --> G["Review Studio<br/>gates / warnings / actions / waivers"]
G --> H["Release boundary<br/>package verification / install simulation / claim guard"]
H --> I["SkillOps loop<br/>feedback / adoption drift / next iteration"]
I --> B
A["Inputs<br/>workflow / prompt / transcript / docs / notes"] --> B["Route<br/>SKILL.md"]
B --> C["Design<br/>method + gates"]
C --> D["Run<br/>create / validate / eval / promote"]
D --> E["Outputs<br/>skill package + reports + adapters"]
```
Read it in 10 seconds:
- **Inputs**: start from rough operational material instead of a polished spec.
- **Intent model**: make the job, outputs, exclusions, constraints, and standards explicit before generating files.
- **Skill IR**: keep the semantic contract separate from any single platform format.
- **Package and compile**: generate the lean skill package and the target-specific adapters from the same source model.
- **Evaluate and review**: turn trigger behavior, output quality, runtime checks, and trust signals into reviewable evidence.
- **Release and operate**: publish only within the current evidence boundary, then feed adoption drift and reviewer feedback into the next iteration.
- **Inputs**: start from rough operational material.
- **Route**: define boundary and trigger in a lean `SKILL.md`.
- **Design**: choose the right archetype, gates, and resource split.
- **Run**: use the unified CLI to build, validate, optimize, and promote.
- **Outputs**: ship a reusable skill plus evidence, governance signals, and portability artifacts.
## Weighted Quality Benchmark
@@ -265,22 +203,6 @@ python3 scripts/yao.py evidence-consistency .
Development source: this repository is the source of truth for authoring and review.
Use Python 3.11 or newer for local development. GitHub Actions runs the test suite on Python 3.11, and the Makefile checks the active interpreter before running `make test` or `make ci-test`.
```bash
python3.11 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
python -m pip install --requirement requirements-ci.txt
make ci-test
```
If `python3` points to an older system interpreter, pass the interpreter explicitly:
```bash
make PYTHON=python3.11 ci-test
```
Disabled mirror: `~/.agents/skills.disabled/yao-meta-skill` is the local backup mirror for this source. Keeping the mirror outside `~/.agents/skills` prevents Codex from showing a duplicate `Yao Meta Skill` while this repository is also visible in the active workspace.
Sync the current source into the disabled mirror:
+12 -12
View File
@@ -1,6 +1,6 @@
---
name: yao-meta-skill
description: Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.
description: Create, refactor, evaluate, package, migrate, govern, and release agent skills from workflows, prompts, transcripts, docs, notes, SOPs, scripts, or repeated team practices. Use when asked to create/build a skill, turn a repeated process into a reusable agent capability, improve or migrate an existing skill, optimize trigger routing, add evals/tests, add references/scripts/interface/manifest, prepare packaging/installation/release, or make a skill team-ready. Also trigger on Chinese asks such as 做/改/重构/迁移/发布 skill, 把流程/SOP/提示词/对话记录沉淀成可复用能力, 封装成团队可复用的 skill, 优化已有 skill, 补 trigger 评测, 收紧触发边界, or 做打包发布检查. Do not use for summary-only, translation-only, brainstorming-only, or documentation-only requests that explicitly say no skill or agent execution.
metadata:
author: Yao Team
---
@@ -15,28 +15,28 @@ metadata:
## Modes
- `Scaffold`: exploratory/personal. `Production`: team reuse. `Library`: shared infra. `Governed`: high-trust/release-critical.
- `Scaffold`: exploratory/personal. `Production`: team reuse. `Library`: shared infrastructure. `Governed`: high-trust, policy-sensitive, or release-critical.
- Rules: [Method](references/skill-engineering-method.md), [Operating Modes](references/operating-modes.md), [Resource Boundaries](references/resource-boundaries.md).
## Compact Workflow
1. One-off/no reusable process: `Do not create a skill`; `near-neighbor`; require `repeated use` + `reusable output contract`.
2. Capture job, output, exclusions, constraints, standards, lightest fit.
3. Scan up to `3-5` references: external, user, local; skip tiny edits; surface only uncertainty/conflict.
4. Write `description` early; route/boundary edits need `trigger_eval.py`; releases need risk-matched gates before folders.
5. Add output-risk, artifact-design, prompt-quality, system-model, next directions only when earned.
1. For one-off/no reusable process: `Do not create a skill`; `near-neighbor`; require `repeated use` + `reusable output contract`.
2. Capture job, output, exclusions, constraints, standards, and the lightest fit.
3. Scan references in order: external benchmark, user source, local fit; surface only uncertainty or conflict.
4. Write `description` early, test route quality, then add only earned folders and gates.
5. Add output-risk, artifact-design, prompt-quality, system-model, and next directions only when useful.
Playbooks: [Method](references/skill-engineering-method.md), [Intent](references/intent-dialogue.md), [Skill IR](references/skill-ir-method.md), [Output Eval](references/output-eval-method.md), [Review Studio](references/review-studio-method.md).
## Skill OS 2.0 Gates
For production/library/governed/team releases, run Skill IR, compiler, trigger/output eval, Skill Atlas, conformance, trust, registry/package/install, upgrade, drift, waiver, Review Studio.
For production, library, governed, or team-distributed work, run Skill IR, target compiler, trigger + output eval, Skill Atlas, conformance, trust, registry/package/install, upgrade, drift, waiver, and Review Studio gates before release.
## Governed Package Boundary
For file-backed/release-critical/governed packages, name `input_files` as `file-backed fixture`; include `owner`, `review cadence`, `input_files`, `output contract`, `rollback boundary`; require `trust report` and `reports/output_quality_scorecard.md`; mark unavailable telemetry/approvals/metrics/benchmarks as `missing evidence`; do not fabricate evidence.
For file-backed, release-critical, or governed packages, name `input_files` as `file-backed fixture` evidence; include `owner`, `review cadence`, `input_files`, `output contract`, `rollback boundary`; require `trust report` and `reports/output_quality_scorecard.md`; mark unavailable telemetry, approvals, metrics, or benchmarks as `missing evidence`; do not fabricate evidence.
Preserve labels literally when they apply: `file-backed fixture`, `input_files`, `output contract`, `rollback boundary`, `trust report`, `reports/output_quality_scorecard.md`, `missing evidence`.
Preserve audit labels literally when they apply: `file-backed fixture`, `input_files`, `output contract`, `rollback boundary`, `trust report`, `reports/output_quality_scorecard.md`, `missing evidence`.
## First-Turn Style
@@ -46,8 +46,8 @@ Preserve labels literally when they apply: `file-backed fixture`, `input_files`,
## Output Contract
Create/refactor/package: produce `SKILL.md`, aligned `agents/interface.yaml`, justified assets, boundary/exclusion/gate summary. Audit/evaluate-only: findings + proposed fixes; edit files only if asked. No-skill: no files.
Unless asked otherwise, produce `SKILL.md`, aligned `agents/interface.yaml`, justified assets, and a short summary of boundary, exclusions, gates, and next steps.
## Reference Map
Primary: [Method](references/skill-engineering-method.md), [Artifact Design](references/artifact-design-doctrine.md), [Systems](references/systems-thinking-doctrine.md), [Governance](references/governance.md), [SkillOps](references/skillops-decision-policy.md).
Primary: [Method](references/skill-engineering-method.md), [Artifact Design](references/artifact-design-doctrine.md), [Systems Thinking](references/systems-thinking-doctrine.md), [Governance](references/governance.md), [SkillOps Decision](references/skillops-decision-policy.md).
+23 -99
View File
@@ -2,64 +2,7 @@
`YAO = Yielding AI Outcomes`,中文可理解为:产出 AI 结果,交付真实成果。它强调的不是生成更多 prompt 文本,而是沉淀可复用的 AI 资产与可落地的实际结果。
`yao-meta-skill` 用来创建、评估、打包和治理可复用的 agent skill。1.0 的重点是把重复工作流整理成可安装、可阅读、可跨平台的 skill 包;2.0 进一步升级为 Skill OS,把建模、跨端编译、输出评测、评审工作台、证据账本、包体验证、发布门禁和后续迭代串成一套完整流程。
[快速开始](#快速开始) · [Skill OS 2.0 升级](#skill-os-20-升级) · [从 1.0 到 2.0](#从-10-到-20) · [Operator UX 命令](#operator-ux-命令) · [加权质量评测](#加权质量评测) · [与其他元 Skill 的适用差异](#与其他元-skill-的适用差异)
## Skill OS 2.0 升级
Skill OS 2.0 保留 `yao-meta-skill` 原来的轻量入口,但把 skill 的生命周期说得更清楚。它不止生成 `SKILL.md`,还会围绕这个 skill 生成结构化契约、目标平台适配、评测证据、发布门禁和运营报告。
- **Skill IR(技能中间表示)**:用平台无关的结构记录意图、触发方式、输入输出、边界、参考资料和交付产物。
- **目标编译与适配器**:把同一份 skill 语义编译到 OpenAI、Claude、通用 agent skill、Agent Skills 兼容包和 VS Code 使用场景。
- **输出评测实验室**:覆盖触发评测、输出断言、执行证据、耗时与 token 证据、基准复现、盲评材料包、答案钥匙和评审裁决报告。
- **Review Studio 2.0(评审工作台)**:把意图、触发、输出评测、上下文成本、运行时检查、信任扫描、Skill Atlas、采用漂移、豁免、批注、发布证据、警告、阻塞项和修复动作放在同一个 HTML 页面。
- **证据与发布治理**:提供证据一致性、包体验证、安装模拟、运行时权限探测、世界级证据接收、证据账本、操作运行手册和公开宣传守卫。
- **SkillOps 闭环**:通过元数据级采用漂移、遥测 hook、自适应建议、日报/周报和组合级漂移信号,把发布后的反馈带回下一轮迭代。
当前发布口径:仓库已经适合进入测试版和外部试用,但更强的“世界级”公开宣传仍然受证据门禁约束。真实生产模型证据、真人盲评证据、原生权限执行和真实客户端遥测会继续作为独立证据任务推进,不会被包装成已经完成。
相关产物:
- [1.0 vs 2.0 可视化对比报告](../.previews/yao-meta-skill-2-comparison/index.html)
- [中文桌面预览图](../.previews/yao-meta-skill-2-comparison/yao-meta-skill-1-vs-2.png)
- [英文桌面预览图](../.previews/yao-meta-skill-2-comparison/yao-meta-skill-1-vs-2-en.png)
## 从 1.0 到 2.0
| 维度 | 1.0 重点 | 2.0 升级 |
| --- | --- | --- |
| 产品定位 | 创建、重构、评估和打包可复用 skill。 | 治理 skill 的完整生命周期:创建、编译、评测、评审、发布、遥测和迭代。 |
| 架构模型 | 以 `SKILL.md``agents/interface.yaml`、manifest 和报告文件为主。 | 引入 Skill IR、目标编译器、适配器、门禁契约、证据账本、发布锁和行动型评审页面。 |
| 跨端交付 | 主要覆盖 OpenAI、Claude 和通用包体。 | 扩展到 Agent Skills 兼容包和 VS Code 使用场景,并把兼容结果写入 registry 可读记录。 |
| 质量模型 | 触发、结构和报告式评审。 | 输出评测、基准复现、执行证据、失败披露、盲评材料包和证据一致性检查。 |
| 报告体验 | 概览 HTML 和首次评审页面。 | 双语 Skill Overview v2、Review Studio 2.0、评审批注、行动卡片、图表和审计型报告契约。 |
| 发布边界 | 能生成包体并做基础校验。 | 包体验证、安装模拟、运行时权限探测、发布锁、公开宣传守卫和操作运行手册。 |
| 运营闭环 | 更多依赖手动反馈和本地迭代。 | 采用漂移、元数据遥测、SkillOps 报告、自适应建议和组合级漂移检测。 |
## 2.0 使用场景
- **从重复工作创建新 skill**:从 workflow 笔记、prompt 集合、转录、runbook 或文档模式出发,生成精简入口、明确输入输出、参考资料、报告和最轻量的必要门禁。
- **把个人 skill 升级成团队资产**:补齐接口契约、manifest、目标适配器、信任检查、输出评测、评审豁免、发布说明和 Review Studio 证据,再交给多人复用。
- **准备测试版发布**:运行包体验证、安装模拟、兼容检查、运行时权限探测和证据一致性检查,把测试版就绪和更强公开声明分开处理。
- **发布后继续迭代**:用元数据级遥测、采用漂移、feedback log、SkillOps 报告和自适应建议判断下一步是补文档、补 eval、改 skill,还是调整治理规则。
- **与其他元 skill 搭配使用**:保留 Anthropic/OpenAI 式对话创建和精简写作方法的优势,在需要证据、可移植性、发布门禁和长期维护时用 `yao-meta-skill` 加固。
## Operator UX 命令
这组只读辅助命令把维护者最常见的判断变成可复验诊断:
```bash
python3 scripts/yao.py install-status --expected-source .
python3 scripts/yao.py localized-doc-sync-check
python3 scripts/yao.py pr-review-report 4 --repo yaojingang/yao-meta-skill
```
- `install-status` 会说明当前 skill 是从 `.codex/skills``.agents/skills` 还是 disabled mirror(禁用镜像)被发现,并提示是否存在重复激活。
- `localized-doc-sync-check` 会检查中文 README 是否同步包含英文 README 首页新增的公开说明模块。
- `pr-review-report` 会只读获取 GitHub PR 元数据、变更文件、状态检查和建议本地命令,不会合并或修改 PR。
## 能力面
`yao-meta-skill` 是一套轻量但严谨的系统,用来创建、评估、打包和治理可复用的 agent skill。
它把粗糙的 workflow、transcript、prompt、notes 和 runbook 转成可复用的 skill 包,并具备:
@@ -69,53 +12,35 @@ python3 scripts/yao.py pr-review-report 4 --repo yaojingang/yao-meta-skill
- 深度起草前先做一轮更有人味的意图对话,并通过 intent confidence gate 判断理解是否足够清楚;如果不够清楚,会继续补 1 到 2 个高杠杆问题
- 深度起草前会静默执行 GitHub benchmark scan 和 reference synthesis,优先学习高质量公开项目与世界级模式;只有遇到真实冲突或不确定性时才显式抬给用户
- 会主动询问用户是否有希望借鉴的参考对象,只学习其中的模式抽象、结构和标准,不复制原文或私密内容
- 新建 skill 时自动生成一份默认中文、可切换英文的 HTML 可视化说明报告
- 提供 Review Studio 2.0,把意图、触发、输出评测、上下文、运行时、信任、采用漂移、豁免、批注、发布证据和修复动作汇总到一个页面
- 提供 Skill OS 2.0 审计,把世界级要求拆成本地证据、人类证据缺口和外部证据缺口
- 提供证据计划、证据账本、证据接收契约、提交审查队列、操作运行手册和公开宣传守卫,避免把计划中的工作写成已经完成
- 提供基准复现 manifest、证据一致性检查、输出评测实验室、盲评包和评审裁决报告
- 提供运行时权限探测、Python 兼容性门禁、包体验证和安装模拟
- 新建 skill 时自动生成一份极简白底 HTML 可视化说明
- 提供 prompt quality profile,把需求模型、RTF 映射、复杂度和提示词质量检查沉淀成 reviewer 可见证据,而不是塞进 `SKILL.md`
- 提供 artifact design profile,约束报告、教程、仪表盘、截图和评审页的视觉与质量标准
- 提供系统思考模型,记录边界、反馈环、漂移风险、复发失败模式和高杠杆改进点
- 首次建包后会自动给出 3 个最有价值的下一步迭代方向
- 提供一个紧凑的 HTML review viewer,方便第一次人工理解和评审
- 提供一个轻量 feedback log,不必每次都走完整 promotion 流程
- 提供本地优先、只记录元数据的 adoption drift 报告、CLI 运行捕获、外部客户端事件 hook、hook recipe 和 JSONL 导入
- 提供显式来源的 adaptive proposal loop,从脱敏重复偏好里生成需要人工批准的改进建议
- 提供 SkillOps 机会评分、决策策略、日报、周报和组合级漂移信号
- 提供一个 with-skill vs baseline 的对比报告,便于快速看增量收益
- 提供一个更像对话发现流程的 archetype-aware quickstart,引导新 skill 落到 scaffold、production、library 或 governed 的合适形态
- Skill IR 作为平台无关语义契约,并提供编译报告和客户端适配层
- registry audit 元数据,包含 package version、owner、license、checksum 和 compatibility matrix
- 中性的源元数据以及面向不同客户端适配层
- 内建的治理、晋升和 portability 检查
## 架构图
Hero 版可以压缩成一条主线:Skill OS 2.0 把零散输入变成一个可治理、可评测、可发布、可持续迭代的 skill 包。
Hero 版可以压缩成一条主线:把零散输入变成一个可治理、可复用的 skill 包。
```mermaid
flowchart LR
A["输入<br/>workflow / prompt / transcript / docs / notes"] --> B["意图建模<br/>任务 / 输出 / 排除项 / 标准"]
B --> C["Skill IR<br/>触发 / 契约 / 资源 / 证据"]
C --> D["Skill 包<br/>SKILL.md / references / scripts / reports"]
C --> E["目标编译<br/>OpenAI / Claude / generic / Agent Skills / VS Code"]
D --> F["评测实验<br/>触发 / 输出 / 基准 / 运行时"]
E --> F
F --> G["Review Studio<br/>门禁 / 警告 / 动作 / 豁免"]
G --> H["发布边界<br/>包体验证 / 安装模拟 / 宣传守卫"]
H --> I["SkillOps 闭环<br/>反馈 / 采用漂移 / 下一轮迭代"]
I --> B
A["输入<br/>workflow / prompt / transcript / docs / notes"] --> B["路由<br/>SKILL.md"]
B --> C["设计<br/>方法 + 质量门"]
C --> D["执行<br/>create / validate / eval / promote"]
D --> E["产出<br/>skill 包 + 报告 + 适配层"]
```
10 秒理解这张图:
- **输入**:从零散 workflow、prompt、文档和笔记出发,不要求一开始就有完整规格
- **意图建模**:先把任务、输出物、排除项、约束和质量标准说清楚,再生成文件
- **Skill IR**:把语义契约和具体平台格式拆开,避免被某一个客户端锁死
- **打包与编译**:从同一份源模型生成精简 skill 包和目标平台适配产物
- **评测与评审**:把触发行为、输出质量、运行时检查和信任信号变成可复查证据。
- **发布与运营**:只在当前证据边界内发布,再把采用漂移和评审反馈带回下一轮迭代。
- **输入**:从零散 workflow、prompt、文档和笔记出发。
- **路由**:先用精简的 `SKILL.md` 定义边界和触发
- **设计**:选择合适的 archetype、gates 和资源拆分方式
- **执行**:通过统一 CLI 完成创建、校验、优化和晋升
- **产出**:最终得到 skill 包,以及评测、治理和 portability 证据。
## 加权质量评测
@@ -151,7 +76,7 @@ flowchart LR
边界:这是单人盲测偏好证据,不是 provider-backed 的独立模型执行证据;每个案例的逐项理由仍为空。
## 与其他元 Skill 的适用差异
## 适用场景
- 如果你要的是**团队复用、显式边界、质量门、治理、可移植性和长期维护**,更适合 `Yao Meta Skill`
- 如果你要的是**对话优先的创作循环和人工引导式迭代**,更适合 `Anthropic Skill Creator`
@@ -178,32 +103,31 @@ npx -y skills add yaojingang/yao-meta-skill -a '*' -g -y
2. 先做一轮简短但更有人味的意图对话,把真实任务、输出物、边界、约束和你在意的质量标准说清楚。
3. 先让 `quickstart` 澄清意图,再静默跑 benchmark scan 和 reference synthesis;只有当意图还不清楚,或者设计路线真的冲突时,才会显式继续追问或让你拍板。
4. 使用 archetype-aware 的 `quickstart` 或完整作者流,在 scaffold、production、library 或 governed 模式下生成或改进 skill 包。
5. 新建 skill 后,先看 `reports/skill-interpretation.html` 理解双语解释报告,再打开 `reports/skill-overview.html` 查看概述、指标、原理、边界、质量、风险、资产和路线,最后用 `reports/review-studio.html` 检查发布阻塞、权限批准和证据路径
5. 新建 skill 后,会默认附带 `reports/intent-dialogue.md``reports/intent-confidence.md``reports/reference-synthesis.md``reports/artifact-design-profile.md``reports/prompt-quality-profile.md``reports/skill-overview.html``reports/review-viewer.html``reports/iteration-directions.md`;后续还可以通过 feedback log 和 baseline compare 快速收集意见、查看增量收益,而不必每次都走完整 promotion 流程
## 当前结果
- 当前 `make test` 和 GitHub Actions `test` 可通过
- 当前 `make test` 可通过
- 当前回归集下 trigger eval 为 `0` 误触发、`0` 漏触发
- train / dev / holdout 三层评测均通过
- 中文真实表达已经纳入触发评测,覆盖“做一个 skill”“沉淀成可复用能力”“优化已有 skill”“补 trigger 评测”等常见说法
- registry 记录的目标平台从 OpenAI、Claude、Generic 扩展到 Agent Skills 和 VS Code 相关适配
- Review Studio 当前汇总 16 个门禁,包体验证、安装模拟、证据一致性和发布声明边界已经进入报告链路
- `openai``claude``generic` 三个目标的 packaging contract 校验通过
- 单人盲测快照中,评审者在揭晓来源前完成判断,并在 `5/5` 个真实 skill 创建场景中选择 `yao-meta-skill`;证据见 [reports/blind-human-review-2026-06-29/adjudication.md](../reports/blind-human-review-2026-06-29/adjudication.md)
## 当前优势
最新加权评测中,Yao 的总分是 `91.5/100`2.0 的强项集中在团队级 skill 资产真正需要的能力上:
最新加权评测中,Yao 的总分是 `91.5/100`最强的部分集中在团队级 skill 资产真正需要的能力上:
- **方法论深度 `9.5`**:已经形成正式的 skill engineering doctrine,覆盖 archetype、gate selection、non-skill decision、governance 和 resource boundary。
- **工具链完整度 `9.5`**:初始化、校验、benchmark scan、description optimization、Skill IR、目标编译、报告、晋升检查、打包、CI 和 portability checks 已经串成一条完整工具链。
- **Eval / 测试严谨度 `9.5`**:触发评测覆盖 train/dev/holdout、blind holdout、adversarial holdout、judge-backed blind eval、route confusion、drift history、output eval 和 promotion gate。
- **治理 / 生命周期 `9.5`**:重要 skill 可以声明 owner、生命周期、review cadence、maturity score、trust boundary、promotion decisionregression history、release lock 和 evidence ledger
- **工具链完整度 `9.5`**:初始化、校验、benchmark scan、description optimization、报告、晋升检查、打包、CI 和 portability checks 已经串成一条完整工具链。
- **Eval / 测试严谨度 `9.5`**:触发评测覆盖 train/dev/holdout、blind holdout、adversarial holdout、judge-backed blind eval、route confusion、drift history 和 promotion gate。
- **治理 / 生命周期 `9.5`**:重要 skill 可以声明 owner、生命周期、review cadence、maturity score、trust boundary、promotion decisionregression history。
- **本地可执行可靠性 `9.5`**:可以通过 `make test``make ci-test` 和统一 CLI 在本地复验。
- **可移植 / 分发能力 `9.0`**:源码保持中性,adapter、degradation rule、packaging contract 和 portability score 负责保留跨环境可复用语义。
- **上下文纪律 / 精简度 `8.0`**:入口仍保持在预算内,但因为系统承载了更多报告、案例、benchmark 和证据资产,这一项被持续作为约束跟踪。
- **上手 / 评审体验 `6.5`**quickstart、HTML overview、side-by-side review viewer 和 feedback log 已经改善首次体验,但仍是下一阶段最值得优化的 UX 维度。
整体方向很明确:入口尽量轻,评测尽量硬,治理显性化;测试版可以开放试用,但公开宣传会继续受证据账本约束
整体方向很明确:入口尽量轻,评测尽量硬,治理显性化,同时继续降低首次创建和人工评审的摩擦
## 为什么是 Yao
@@ -214,7 +138,7 @@ npx -y skills add yaojingang/yao-meta-skill -a '*' -g -y
## 它能做什么
这个项目帮助你把 skill 从一次性 prompt,升级成可创建、可重构、可评估、可打包、可审计、可发布、可持续迭代的长期能力包。
这个项目帮助你把 skill 从一次性 prompt,升级成可创建、可重构、可评估、可打包的长期能力包。
它的设计逻辑很简单:
+1 -1
View File
@@ -1 +1 @@
Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.
Create, refactor, evaluate, package, migrate, govern, and release agent skills from workflows, prompts, transcripts, docs, notes, SOPs, scripts, or repeated team practices. Use when asked to create/build a skill, turn a repeated process into a reusable agent capability, improve or migrate an existing skill, optimize trigger routing, add evals/tests, add references/scripts/interface/manifest, prepare packaging/installation/release, or make a skill team-ready. Also trigger on Chinese asks such as 做/改/重构/迁移/发布 skill, 把流程/SOP/提示词/对话记录沉淀成可复用能力, 封装成团队可复用的 skill, 优化已有 skill, 补 trigger 评测, 收紧触发边界, or 做打包发布检查. Do not use for summary-only, translation-only, brainstorming-only, or documentation-only requests that explicitly say no skill or agent execution.
+1 -1
View File
@@ -16,7 +16,7 @@
"vscode"
],
"package_metadata": "registry/packages/yao-meta-skill.json",
"package_sha256": "db71157184dc649ee72dfcaf399204d44a366d942393d055571e0137d42c9f7c"
"package_sha256": "5a99ef3133b0148cd5bbc1cd85fad4830bf34ca2bbac709f1e1fea2f810b1257"
}
]
}
+4 -4
View File
@@ -2,7 +2,7 @@
"schema_version": "2.0",
"name": "yao-meta-skill",
"version": "1.1.0",
"description": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.",
"description": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.",
"targets": [
"openai",
"claude",
@@ -16,8 +16,8 @@
"trust_level": "local",
"license": "MIT",
"checksums": {
"package_sha256": "db71157184dc649ee72dfcaf399204d44a366d942393d055571e0137d42c9f7c",
"archive_sha256": "c56a8519244c0bc8ec17c92d4641c832629cc059f4b51fe177a2c039515253a7"
"package_sha256": "5a99ef3133b0148cd5bbc1cd85fad4830bf34ca2bbac709f1e1fea2f810b1257",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2"
},
"compatibility": {
"openai": "pass",
@@ -48,7 +48,7 @@
},
"distribution": {
"archive_verified": true,
"archive_sha256": "c56a8519244c0bc8ec17c92d4641c832629cc059f4b51fe177a2c039515253a7",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"package_verification": "reports/package_verification.json",
"install_simulated": true,
"install_simulation": "reports/install_simulation.json"
+1 -1
View File
@@ -1,7 +1,7 @@
{
"schema_version": "1.0",
"ok": true,
"generated_at": "2026-07-02T06:33:07Z",
"generated_at": "2026-06-17T08:58:54Z",
"skill_dir": ".",
"source_patterns": "reports/user_patterns.json",
"pattern_count": 5,
+1 -1
View File
@@ -1,6 +1,6 @@
# Adaptation Proposals
- Generated at: `2026-07-02T06:33:07Z`
- Generated at: `2026-06-17T08:58:54Z`
- Pattern report: `reports/user_patterns.json`
- Proposal only: `true`
- Writes repository files: `false`
+14 -14
View File
@@ -1,7 +1,7 @@
{
"ok": true,
"schema_version": "2.0",
"generated_at": "2026-07-02T06:33:44Z",
"generated_at": "2026-06-17T08:58:53Z",
"skill_dir": ".",
"privacy_contract": {
"storage": "local-first",
@@ -25,14 +25,14 @@
},
"summary": {
"event_count": 1,
"adoption_sample_count": 1,
"activation_count": 1,
"accepted_count": 1,
"adoption_sample_count": 0,
"activation_count": 0,
"accepted_count": 0,
"edited_count": 0,
"rejected_count": 0,
"missed_count": 0,
"failed_count": 0,
"adoption_rate": 100.0,
"adoption_rate": 0,
"missed_trigger_count": 0,
"wrong_trigger_count": 0,
"bad_output_count": 0,
@@ -41,7 +41,7 @@
"review_overdue_count": 0,
"risk_band": "low",
"event_types": {
"skill_activation": 1
"review_event": 1
},
"failure_types": {},
"source_types": {
@@ -53,31 +53,31 @@
{
"skill": "yao-meta-skill",
"events": 1,
"adoption_events": 1,
"accepted": 1,
"adoption_events": 0,
"accepted": 0,
"edited": 0,
"rejected": 0,
"missed": 0,
"adoption_rate": 100.0
"adoption_rate": 0
}
],
"next_iteration_candidates": [],
"recent_events": [
{
"command": "unknown",
"event": "skill_activation",
"event": "review_event",
"skill": "yao-meta-skill",
"source": "manual",
"version": "1.1.0",
"activation_type": "explicit",
"outcome": "accepted",
"activation_type": "manual",
"outcome": "reviewed",
"failure_type": "none",
"timestamp": "2026-06-13T10:00:00Z"
"timestamp": "2026-06-13T12:00:00Z"
}
],
"failures": [],
"artifacts": {
"events_jsonl": "tests/tmp_review_studio/telemetry_events.jsonl",
"events_jsonl": "reports/telemetry_events.jsonl",
"json": "reports/adoption_drift_report.json",
"markdown": "reports/adoption_drift_report.md"
}
+5 -5
View File
@@ -5,9 +5,9 @@ Local-first, metadata-only telemetry for skill operations. Raw prompts, outputs,
## Summary
- Events: `1`
- Adoption samples: `1`
- Activation events: `1`
- Adoption rate: `100.0`
- Adoption samples: `0`
- Activation events: `0`
- Adoption rate: `0`
- Missed trigger signals: `0`
- Bad output signals: `0`
- Script error signals: `0`
@@ -25,7 +25,7 @@ Local-first, metadata-only telemetry for skill operations. Raw prompts, outputs,
| Skill | Events | Adoption Samples | Accepted | Edited | Rejected | Missed | Adoption Rate |
| --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: |
| `yao-meta-skill` | 1 | 1 | 1 | 0 | 0 | 0 | 100.0 |
| `yao-meta-skill` | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
## Next Iteration Candidates
@@ -33,4 +33,4 @@ Local-first, metadata-only telemetry for skill operations. Raw prompts, outputs,
## Recent Metadata Events
- `2026-06-13T10:00:00Z` `yao-meta-skill` event=`skill_activation` source=`manual` command=`unknown` activation=`explicit` outcome=`accepted` failure=`none`
- `2026-06-13T12:00:00Z` `yao-meta-skill` event=`review_event` source=`manual` command=`unknown` activation=`manual` outcome=`reviewed` failure=`none`
+7 -7
View File
@@ -1,17 +1,17 @@
{
"schema_version": "1.0",
"ok": true,
"generated_at": "2026-06-13",
"generated_at": "2026-06-17",
"skill_dir": ".",
"summary": {
"python_file_count": 232,
"script_file_count": 155,
"test_file_count": 77,
"internal_module_count": 71,
"python_file_count": 229,
"script_file_count": 153,
"test_file_count": 76,
"internal_module_count": 69,
"cli_script_count": 86,
"command_handler_count": 71,
"command_handler_count": 68,
"entrypoint_command_handler_count": 18,
"command_module_count": 7,
"command_module_count": 6,
"warn_line_threshold": 900,
"watch_line_threshold": 720,
"early_watch_line_threshold": 600,
+7 -7
View File
@@ -1,18 +1,18 @@
# Architecture Maintainability
Generated at: `2026-06-13`
Generated at: `2026-06-17`
## Summary
- decision: `pass`
- python files: `232`
- scripts: `155`
- tests: `77`
- internal modules: `71`
- python files: `229`
- scripts: `153`
- tests: `76`
- internal modules: `69`
- CLI scripts: `86`
- Yao CLI command handlers: `71`
- Yao CLI command handlers: `68`
- entrypoint command handlers: `18`
- command modules: `7`
- command modules: `6`
- largest file lines: `719`
- early watch threshold lines: `600`
- early watchlist: `6`
+1 -1
View File
@@ -1,5 +1,5 @@
{
"skill_name": "yao-meta-skill-trigger-coverage-merge",
"skill_name": "yao-meta-skill",
"design_system": "metric editorial",
"primary_artifact": {
"key": "dashboard",
+1 -1
View File
@@ -1,6 +1,6 @@
# Artifact Design Profile
Skill: `yao-meta-skill-trigger-coverage-merge`
Skill: `yao-meta-skill`
Design system: `metric editorial`
## Primary Artifact Direction
+2 -2
View File
@@ -20,7 +20,7 @@
"adversarial_errors": 0
},
"current": {
"tokens": 54,
"tokens": 53,
"dev_errors": 0,
"holdout_errors": 0,
"blind_errors": 0,
@@ -28,7 +28,7 @@
"adversarial_errors": 0
},
"winner": {
"tokens": 54,
"tokens": 53,
"dev_errors": 0,
"holdout_errors": 0,
"blind_errors": 0,
+63 -68
View File
@@ -1,47 +1,45 @@
{
"schema_version": "1.0",
"ok": true,
"generated_at": "2026-07-02",
"generated_at": "2026-06-17",
"skill_dir": ".",
"commit": "24bea607a2b16e766bc8f2bc8483f22fae1edc61",
"commit": "e79050ed12d057811d7d13ab7d8bcc5a06af76d4",
"git_status": {
"available": true,
"dirty": true,
"changed_file_count": 37,
"changed_file_count": 29,
"generated_dirty": true,
"generated_changed_file_count": 36,
"source_dirty": true,
"source_changed_file_count": 1,
"generated_changed_file_count": 29,
"source_dirty": false,
"source_changed_file_count": 0,
"sample": [
" M SKILL.md",
" M registry/index.json",
" M registry/packages/yao-meta-skill.json",
" M reports/adaptation_proposals.json",
" M reports/adaptation_proposals.md",
" M reports/adoption_drift_report.json",
" M reports/architecture_maintainability.json",
" M reports/architecture_maintainability.md",
" M reports/benchmark_reproducibility.json",
" M reports/benchmark_reproducibility.md",
" M reports/compiled_targets.json",
" M reports/context_budget.json",
" M reports/context_budget.md",
" M reports/context_budget_summary.json"
],
"source_sample": [
" M SKILL.md"
],
"source_sample": [],
"generated_sample": [
" M registry/index.json",
" M registry/packages/yao-meta-skill.json",
" M reports/adaptation_proposals.json",
" M reports/adaptation_proposals.md",
" M reports/adoption_drift_report.json",
" M reports/architecture_maintainability.json",
" M reports/architecture_maintainability.md",
" M reports/benchmark_reproducibility.json",
" M reports/benchmark_reproducibility.md",
" M reports/compiled_targets.json",
" M reports/context_budget.json",
" M reports/context_budget.md",
" M reports/context_budget_summary.json",
" M reports/evidence_consistency.json"
" M reports/context_budget_summary.json"
],
"generated_dirty_prefixes": [
"dist/",
@@ -55,13 +53,13 @@
},
"summary": {
"reproducibility_ready": true,
"release_lock_ready": false,
"release_lock_ready": true,
"methodology_complete": true,
"required_artifact_count": 25,
"missing_artifact_count": 0,
"evidence_bundle_sha256": "6c95043c2d8513102b37bc70a01647246933c84e8a27c2748cc2cae20e040158",
"source_contract_sha256": "db71157184dc649ee72dfcaf399204d44a366d942393d055571e0137d42c9f7c",
"archive_sha256": "c56a8519244c0bc8ec17c92d4641c832629cc059f4b51fe177a2c039515253a7",
"evidence_bundle_sha256": "55a6c33c12e14d6507d4a5d4d4cf1268db35fb323d523e8b23ce9c73aedf8db0",
"source_contract_sha256": "5a99ef3133b0148cd5bbc1cd85fad4830bf34ca2bbac709f1e1fea2f810b1257",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"output_case_count": 5,
"failure_disclosure_count": 3,
"command_count": 23,
@@ -76,26 +74,24 @@
"world_class_task_count": 4,
"world_class_ledger_pending_count": 4,
"world_class_source_check_count": 19,
"world_class_source_pass_count": 12,
"world_class_source_blocked_count": 7,
"beta_test_ready": false,
"beta_test_blocker_count": 1,
"world_class_source_pass_count": 11,
"world_class_source_blocked_count": 8,
"beta_test_ready": true,
"beta_test_blocker_count": 0,
"beta_test_deferred_evidence_count": 4,
"public_claim_ready": false,
"public_claim_blocker_count": 4,
"public_claim_blocker_count": 3,
"working_tree_dirty": true,
"changed_file_count": 37,
"source_tree_dirty": true,
"source_changed_file_count": 1,
"changed_file_count": 29,
"source_tree_dirty": false,
"source_changed_file_count": 0,
"generated_tree_dirty": true,
"generated_changed_file_count": 36
"generated_changed_file_count": 29
},
"beta_test_release": {
"ready": false,
"ready": true,
"scope": "beta/public test release without superiority, fully-reviewed, or world-class claims",
"blockers": [
"release lock is not clean or commit is unavailable"
],
"blockers": [],
"allowed_deferred_evidence": [
{
"key": "provider-holdout",
@@ -125,20 +121,19 @@
"ready": false,
"scope": "public benchmark or world-class readiness claim",
"blockers": [
"release lock is not clean or commit is unavailable",
"human blind-review adjudication is incomplete",
"world-class evidence is not accepted yet (3 open gaps, 4 ledger pending)",
"world-class source checks are not all accepted (12/19 pass, 7 blocked)"
"world-class source checks are not all accepted (11/19 pass, 8 blocked)"
],
"policy": "Local reproducibility can pass before public claims; public claims require provider evidence, human adjudication, clean release lock, accepted world-class evidence, and complete source checks."
},
"release_lock": {
"ready": false,
"commit": "24bea607a2b16e766bc8f2bc8483f22fae1edc61",
"ready": true,
"commit": "e79050ed12d057811d7d13ab7d8bcc5a06af76d4",
"status_scope": "generation-time status before this report is written",
"source_changed_file_count": 1,
"generated_changed_file_count": 36,
"reason": "source files were dirty at generation time"
"source_changed_file_count": 0,
"generated_changed_file_count": 29,
"reason": "only generated evidence artifacts were dirty at generation time"
},
"evidence_bundle": {
"algorithm": "sha256(path,label,exists,artifact_sha256)",
@@ -146,7 +141,7 @@
"existing_count": 25,
"missing_count": 0,
"missing_paths": [],
"sha256": "6c95043c2d8513102b37bc70a01647246933c84e8a27c2748cc2cae20e040158"
"sha256": "55a6c33c12e14d6507d4a5d4d4cf1268db35fb323d523e8b23ce9c73aedf8db0"
},
"methodology": {
"path": "reports/benchmark_methodology.md",
@@ -240,8 +235,8 @@
"label": "trigger_scorecard",
"path": "reports/route_scorecard.json",
"exists": true,
"bytes": 17042,
"sha256": "53fc22d220dc11453c1e66a17ec2d935e069f9bc936952fe4a53afdb4c71b2cc"
"bytes": 16950,
"sha256": "a649547a7d3d5fe02262ca1b188ed4022d8f557770be425f7b7cf762aa76533a"
},
{
"label": "runtime_conformance",
@@ -254,106 +249,106 @@
"label": "trust_report",
"path": "reports/security_trust_report.json",
"exists": true,
"bytes": 139090,
"sha256": "108aee597a1f245f73d9b69454b6fa8a144545f905231a7c314364c7066541c6"
"bytes": 137787,
"sha256": "bbff1f1bee0ce6f7014efcd4622ba11c70aacfc81f2e69e225411df7004dd616"
},
{
"label": "python_compatibility",
"path": "reports/python_compatibility.json",
"exists": true,
"bytes": 30497,
"sha256": "4d82942052a2ca87db7acea451096332d4b8bf6420a29fa9f5596e83464d21ea"
"bytes": 30127,
"sha256": "d31dc03c74f17242f4163b8cb3f23120fe3d0712edd08fa183cb94f8120d491c"
},
{
"label": "registry_audit",
"path": "reports/registry_audit.json",
"exists": true,
"bytes": 3155,
"sha256": "d307675d5c6c3cd2f104ce7d963b37d36113f35334e4c6895b55fbb8b255e915"
"bytes": 3137,
"sha256": "1feb80c7cdc833a655cc0e44150f39f9f6d0633465abaa1ae29ebe7cb0649065"
},
{
"label": "package_verification",
"path": "reports/package_verification.json",
"exists": true,
"bytes": 19525,
"sha256": "e2ad726ce0486be0f57d88e518ef4d265479a04756419c6f8df50cf7d05b1f14"
"bytes": 19338,
"sha256": "7aa6c25e8154d246ace49f7ab9159fa85f96d1d4ebb7e2bb03c7b223260a908b"
},
{
"label": "install_simulation",
"path": "reports/install_simulation.json",
"exists": true,
"bytes": 8947,
"sha256": "65adf51d8c4b1d5ea49edde09004f7e4bfc06127e640baf2de23af695fbe0728"
"bytes": 8758,
"sha256": "c1f1122264b868c4998482c580ef94333575c6ff7c5c9c297188b225f69a131d"
},
{
"label": "skill_os2_audit",
"path": "reports/skill_os2_audit.json",
"exists": true,
"bytes": 13824,
"sha256": "150c0027deaa3c2dd44db5380e9a9b16f123e8a8e3ff6142c711b2b0c432f81c"
"sha256": "6362e79a8cfd3ff54b1a7ca32f37de8ed1cda500b953fdf1074928c6d2d62379"
},
{
"label": "world_class_evidence_plan",
"path": "reports/world_class_evidence_plan.json",
"exists": true,
"bytes": 23314,
"sha256": "483ed2b3bd020fa2c5a888300c0d0c1a265eebaf648076581f082f2d527d3669"
"sha256": "8eb5e1fbaa7580f107fd9920d13a13b239edb72d50b6959fc8f6dd43150f07d7"
},
{
"label": "world_class_evidence_ledger",
"path": "reports/world_class_evidence_ledger.json",
"exists": true,
"bytes": 26274,
"sha256": "b19e7113ec463dbb1cfb87c45d3c51624151aeea1747c8d9c286b6967a385c6a"
"bytes": 26277,
"sha256": "6038b6cd6e0667f25cfd69a5e40afa314d9efc3a93753a2a3a0509ae9b516a15"
},
{
"label": "world_class_evidence_intake",
"path": "reports/world_class_evidence_intake.json",
"exists": true,
"bytes": 20922,
"sha256": "885bff9c1c8546c606f583a982a2283229438dbdcd44f3c7e55aff71f858f8f4"
"sha256": "aa262da0ecee7232974ce061a51c8966c310de0b0be9f91eb82bb28bf1c7c0a8"
},
{
"label": "world_class_evidence_preflight",
"path": "reports/world_class_evidence_preflight.json",
"exists": true,
"bytes": 90854,
"sha256": "06e93b1c0c99107002466d9418a4910c82397bce26c3bbdd5b5cc9875eeb65b2"
"bytes": 94341,
"sha256": "95cb56581224aab06be84d0b338d6ba9aa4aef0b1ebd480801f1e2226b873b0d"
},
{
"label": "world_class_submission_review",
"path": "reports/world_class_submission_review.json",
"exists": true,
"bytes": 17292,
"sha256": "e8df5c72ade7ad0704b6ee5dd6aedefea98f79a9a370cd4d80655401862e87f4"
"bytes": 17295,
"sha256": "12fbb84926294c4bd05af526fcbe0983db26e449d2c305006094baf27332a0ba"
},
{
"label": "world_class_operator_runbook",
"path": "reports/world_class_operator_runbook.json",
"exists": true,
"bytes": 83712,
"sha256": "bb67813244d64f8e5e416620bb9d7856d95d85a1ec7f9581b2a97b9fed47e02e"
"bytes": 87257,
"sha256": "f321dc118ee931a1e1510559e5e64774168a58b0446ae62d232009eb42e3b384"
},
{
"label": "world_class_operator_runbook_markdown",
"path": "reports/world_class_operator_runbook.md",
"exists": true,
"bytes": 25504,
"sha256": "e8d4dee7541323f0e6fa6be4903e7c482b1d00ef1db5594f0c44212088b53d85"
"bytes": 25549,
"sha256": "858ee11bbacb143f648e9c00735bc248a0b9f3c9303dc9e0ad5c0a65d9d6e07f"
},
{
"label": "world_class_operator_runbook_html",
"path": "reports/world_class_operator_runbook.html",
"exists": true,
"bytes": 34651,
"sha256": "022594013b2469a0e5776e3f5f6a99fa069917c5ba5cb90256b7841b1f5fd1e3"
"bytes": 34702,
"sha256": "31b24658c59ee1dee25aec378e72033b042af88dfdf40c325d361d0c9bec2ca7"
},
{
"label": "world_class_claim_guard",
"path": "reports/world_class_claim_guard.json",
"exists": true,
"bytes": 20713,
"sha256": "911ba833055ab857250f88d88ccdd0bb652076a81214f725c49d763352035572"
"bytes": 18596,
"sha256": "abe7f7d60c0025e140373fadaefbed4063f285c140c74b9c7cfb464e354bb526"
}
],
"missing_artifacts": [],
+36 -37
View File
@@ -1,49 +1,49 @@
# Benchmark Reproducibility
Generated at: `2026-07-02`
Commit: `24bea607a2b16e766bc8f2bc8483f22fae1edc61`
Generated at: `2026-06-17`
Commit: `e79050ed12d057811d7d13ab7d8bcc5a06af76d4`
Working tree dirty at generation: `true`
Source tree dirty at generation: `true`
Source tree dirty at generation: `false`
Generated evidence dirty at generation: `true`
Evidence bundle SHA256: `6c95043c2d8513102b37bc70a01647246933c84e8a27c2748cc2cae20e040158`
Evidence bundle SHA256: `55a6c33c12e14d6507d4a5d4d4cf1268db35fb323d523e8b23ce9c73aedf8db0`
## Summary
- reproducibility ready: `true`
- release lock ready: `false`
- release lock ready: `true`
- methodology complete: `true`
- required artifacts: `25`
- missing artifacts: `0`
- source contract sha256: `db71157184dc`
- archive sha256: `c56a8519244c`
- source contract sha256: `5a99ef3133b0`
- archive sha256: `7db44f059844`
- output cases: `5`
- disclosed failure cases: `3`
- reproduction commands: `23`
- provider evidence complete: `true`
- human review complete: `false`
- world-class ready: `false`
- world-class source checks: `12` pass / `19` total; `7` blocked
- beta test ready: `false`
- beta test blockers: `1`
- world-class source checks: `11` pass / `19` total; `8` blocked
- beta test ready: `true`
- beta test blockers: `0`
- beta deferred evidence: `4`
- public claim ready: `false`
- public claim blockers: `4`
- changed files at generation: `37`
- source changed files at generation: `1`
- generated changed files at generation: `36`
- public claim blockers: `3`
- changed files at generation: `29`
- source changed files at generation: `0`
- generated changed files at generation: `29`
This report proves local benchmark reproducibility only. It keeps external provider and human-review gaps visible instead of counting them as complete. The git commit and dirty samples are generation-time context; the evidence bundle SHA is the durable anchor for the artifacts listed below.
## Beta Test Boundary
- ready: `false`
- ready: `true`
- scope: beta/public test release without superiority, fully-reviewed, or world-class claims
- policy: Human blind-review, native permission enforcement, real client telemetry, and ledger acceptance may be deferred for beta/public testing, but public claims must remain blocked until those evidence entries are accepted.
- required wording: Use beta, public test, or technical preview wording; do not claim world-class readiness, fully reviewed quality, or proven superiority over baseline.
| Blocker |
| --- |
| release lock is not clean or commit is unavailable |
| none |
| Deferred evidence | Reason |
| --- | --- |
@@ -60,22 +60,21 @@ This report proves local benchmark reproducibility only. It keeps external provi
| Blocker |
| --- |
| release lock is not clean or commit is unavailable |
| human blind-review adjudication is incomplete |
| world-class evidence is not accepted yet (3 open gaps, 4 ledger pending) |
| world-class source checks are not all accepted (12/19 pass, 7 blocked) |
| world-class source checks are not all accepted (11/19 pass, 8 blocked) |
## Release Lock
- ready: `false`
- reason: source files were dirty at generation time
- ready: `true`
- reason: only generated evidence artifacts were dirty at generation time
- status scope: generation-time status before this report is written
## Evidence Bundle
- algorithm: `sha256(path,label,exists,artifact_sha256)`
- artifacts: `25` / `25`
- sha256: `6c95043c2d8513102b37bc70a01647246933c84e8a27c2748cc2cae20e040158`
- sha256: `55a6c33c12e14d6507d4a5d4d4cf1268db35fb323d523e8b23ce9c73aedf8db0`
## Methodology Sections
@@ -100,23 +99,23 @@ This report proves local benchmark reproducibility only. It keeps external provi
| output_execution | `reports/output_execution_runs.json` | present | `4df66b63d2e7` |
| blind_review | `reports/output_blind_review_pack.json` | present | `bbe2db8ec277` |
| review_adjudication | `reports/output_review_adjudication.json` | present | `91fd88dd9b0f` |
| trigger_scorecard | `reports/route_scorecard.json` | present | `53fc22d220dc` |
| trigger_scorecard | `reports/route_scorecard.json` | present | `a649547a7d3d` |
| runtime_conformance | `reports/conformance_matrix.json` | present | `97f9ba949c23` |
| trust_report | `reports/security_trust_report.json` | present | `108aee597a1f` |
| python_compatibility | `reports/python_compatibility.json` | present | `4d82942052a2` |
| registry_audit | `reports/registry_audit.json` | present | `d307675d5c6c` |
| package_verification | `reports/package_verification.json` | present | `e2ad726ce048` |
| install_simulation | `reports/install_simulation.json` | present | `65adf51d8c4b` |
| skill_os2_audit | `reports/skill_os2_audit.json` | present | `150c0027deaa` |
| world_class_evidence_plan | `reports/world_class_evidence_plan.json` | present | `483ed2b3bd02` |
| world_class_evidence_ledger | `reports/world_class_evidence_ledger.json` | present | `b19e7113ec46` |
| world_class_evidence_intake | `reports/world_class_evidence_intake.json` | present | `885bff9c1c85` |
| world_class_evidence_preflight | `reports/world_class_evidence_preflight.json` | present | `06e93b1c0c99` |
| world_class_submission_review | `reports/world_class_submission_review.json` | present | `e8df5c72ade7` |
| world_class_operator_runbook | `reports/world_class_operator_runbook.json` | present | `bb67813244d6` |
| world_class_operator_runbook_markdown | `reports/world_class_operator_runbook.md` | present | `e8d4dee75413` |
| world_class_operator_runbook_html | `reports/world_class_operator_runbook.html` | present | `022594013b24` |
| world_class_claim_guard | `reports/world_class_claim_guard.json` | present | `911ba833055a` |
| trust_report | `reports/security_trust_report.json` | present | `bbff1f1bee0c` |
| python_compatibility | `reports/python_compatibility.json` | present | `d31dc03c74f1` |
| registry_audit | `reports/registry_audit.json` | present | `1feb80c7cdc8` |
| package_verification | `reports/package_verification.json` | present | `7aa6c25e8154` |
| install_simulation | `reports/install_simulation.json` | present | `c1f1122264b8` |
| skill_os2_audit | `reports/skill_os2_audit.json` | present | `6362e79a8cfd` |
| world_class_evidence_plan | `reports/world_class_evidence_plan.json` | present | `8eb5e1fbaa75` |
| world_class_evidence_ledger | `reports/world_class_evidence_ledger.json` | present | `6038b6cd6e06` |
| world_class_evidence_intake | `reports/world_class_evidence_intake.json` | present | `aa262da0ecee` |
| world_class_evidence_preflight | `reports/world_class_evidence_preflight.json` | present | `95cb56581224` |
| world_class_submission_review | `reports/world_class_submission_review.json` | present | `12fbb8492629` |
| world_class_operator_runbook | `reports/world_class_operator_runbook.json` | present | `f321dc118ee9` |
| world_class_operator_runbook_markdown | `reports/world_class_operator_runbook.md` | present | `858ee11bbacb` |
| world_class_operator_runbook_html | `reports/world_class_operator_runbook.html` | present | `31b24658c59e` |
| world_class_claim_guard | `reports/world_class_claim_guard.json` | present | `abe7f7d60c00` |
## Reproduction Commands
@@ -1,149 +0,0 @@
<!doctype html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>答案钥匙 - Skill 盲测评审</title>
<style>
:root {
color-scheme: light;
--bg: #f7f8fb;
--panel: #ffffff;
--ink: #20242c;
--muted: #687082;
--line: #d9deea;
--accent: #2563eb;
--accent-2: #0f766e;
--warn: #b45309;
}
* { box-sizing: border-box; }
body {
margin: 0;
font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
background: var(--bg);
color: var(--ink);
line-height: 1.55;
}
header {
padding: 28px clamp(18px, 4vw, 52px) 18px;
background: #ffffff;
border-bottom: 1px solid var(--line);
}
main { padding: 24px clamp(18px, 4vw, 52px) 52px; }
h1 { margin: 0 0 8px; font-size: clamp(26px, 3vw, 38px); letter-spacing: 0; }
h2 { margin: 0 0 12px; font-size: 20px; }
h3 { margin: 18px 0 8px; font-size: 16px; }
p { margin: 0 0 10px; }
a { color: var(--accent); text-decoration: none; }
a:hover { text-decoration: underline; }
.meta, .note { color: var(--muted); }
.grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; align-items: start; }
.card, .panel {
background: var(--panel);
border: 1px solid var(--line);
border-radius: 8px;
padding: 18px;
}
.case-list { display: grid; gap: 12px; margin-top: 18px; }
.case-row {
display: grid;
grid-template-columns: 1fr auto;
gap: 12px;
align-items: center;
background: var(--panel);
border: 1px solid var(--line);
border-radius: 8px;
padding: 14px 16px;
}
.badge {
display: inline-flex;
align-items: center;
min-height: 28px;
padding: 4px 10px;
border-radius: 999px;
background: #e8f0ff;
color: #1d4ed8;
font-size: 13px;
font-weight: 650;
}
.rubric { margin: 0; padding-left: 20px; }
.rubric li { margin-bottom: 6px; }
.variant {
background: var(--panel);
border: 1px solid var(--line);
border-radius: 8px;
overflow: hidden;
}
.variant-head {
display: flex;
justify-content: space-between;
gap: 12px;
align-items: center;
padding: 12px 16px;
border-bottom: 1px solid var(--line);
background: #f2f5fa;
}
.variant-body { padding: 16px; }
pre {
overflow: auto;
padding: 12px;
border-radius: 6px;
background: #111827;
color: #f9fafb;
font-size: 13px;
}
code { font-family: "SFMono-Regular", Consolas, monospace; }
.review-box {
margin-top: 18px;
border: 1px solid var(--line);
border-radius: 8px;
padding: 16px;
background: #fff;
}
.controls { display: flex; flex-wrap: wrap; gap: 10px; margin: 12px 0; }
button, .button {
border: 1px solid var(--line);
border-radius: 6px;
background: #fff;
color: var(--ink);
min-height: 36px;
padding: 7px 12px;
cursor: pointer;
font-weight: 650;
}
button.primary, .button.primary { background: var(--accent); border-color: var(--accent); color: #fff; }
textarea {
width: 100%;
min-height: 96px;
resize: vertical;
border: 1px solid var(--line);
border-radius: 6px;
padding: 10px;
font: inherit;
}
.warn { color: var(--warn); font-weight: 650; }
.split { display: flex; flex-wrap: wrap; gap: 10px; }
.small { font-size: 13px; }
@media (max-width: 900px) {
.grid { grid-template-columns: 1fr; }
.case-row { grid-template-columns: 1fr; }
}
table { width:100%; border-collapse: collapse; } td, th { border:1px solid var(--line); padding:8px; text-align:left; }</style>
</head>
<body>
<header>
<a class="button" href="index.html">返回入口</a>
<h1>答案钥匙</h1>
<p class="warn">请只在所有评审判断都记录完成后再打开。</p>
</header>
<main>
<section class="panel">
<table>
<thead><tr><th>案例</th><th>方案 A 来源</th><th>方案 B 来源</th></tr></thead>
<tbody><tr><td>case-01-support-triage</td><td>官方 skill-creator</td><td>yao-meta-skill</td></tr><tr><td>case-02-monthly-revenue-reconciliation</td><td>yao-meta-skill</td><td>官方 skill-creator</td></tr><tr><td>case-03-webinar-repurposing</td><td>官方 skill-creator</td><td>yao-meta-skill</td></tr><tr><td>case-04-incident-postmortem</td><td>yao-meta-skill</td><td>官方 skill-creator</td></tr><tr><td>case-05-pr-review-followup</td><td>官方 skill-creator</td><td>yao-meta-skill</td></tr></tbody>
</table>
<p class="note" style="margin-top:12px">来源路径:yao-meta-skill = /Users/laoyao/AI Coding/03-Development/Skills/yao-meta-skill/SKILL.md;官方 skill-creator = /Users/laoyao/.codex/skills/.system/skill-creator/SKILL.md。</p>
</section>
</main>
</body>
</html>
@@ -1,62 +0,0 @@
{
"schema_version": "1.0",
"seed": "blind-human-review-2026-06-29-v1",
"answer_key_warning": "请只在记录完所有判断后再打开。",
"answers": [
{
"case_id": "case-01-support-triage",
"variant_a_source": "official",
"variant_b_source": "yao",
"variant_a_source_label": "官方 skill-creator",
"variant_b_source_label": "yao-meta-skill",
"source_paths": {
"yao": "/Users/laoyao/AI Coding/03-Development/Skills/yao-meta-skill/SKILL.md",
"official": "/Users/laoyao/.codex/skills/.system/skill-creator/SKILL.md"
}
},
{
"case_id": "case-02-monthly-revenue-reconciliation",
"variant_a_source": "yao",
"variant_b_source": "official",
"variant_a_source_label": "yao-meta-skill",
"variant_b_source_label": "官方 skill-creator",
"source_paths": {
"yao": "/Users/laoyao/AI Coding/03-Development/Skills/yao-meta-skill/SKILL.md",
"official": "/Users/laoyao/.codex/skills/.system/skill-creator/SKILL.md"
}
},
{
"case_id": "case-03-webinar-repurposing",
"variant_a_source": "official",
"variant_b_source": "yao",
"variant_a_source_label": "官方 skill-creator",
"variant_b_source_label": "yao-meta-skill",
"source_paths": {
"yao": "/Users/laoyao/AI Coding/03-Development/Skills/yao-meta-skill/SKILL.md",
"official": "/Users/laoyao/.codex/skills/.system/skill-creator/SKILL.md"
}
},
{
"case_id": "case-04-incident-postmortem",
"variant_a_source": "yao",
"variant_b_source": "official",
"variant_a_source_label": "yao-meta-skill",
"variant_b_source_label": "官方 skill-creator",
"source_paths": {
"yao": "/Users/laoyao/AI Coding/03-Development/Skills/yao-meta-skill/SKILL.md",
"official": "/Users/laoyao/.codex/skills/.system/skill-creator/SKILL.md"
}
},
{
"case_id": "case-05-pr-review-followup",
"variant_a_source": "official",
"variant_b_source": "yao",
"variant_a_source_label": "官方 skill-creator",
"variant_b_source_label": "yao-meta-skill",
"source_paths": {
"yao": "/Users/laoyao/AI Coding/03-Development/Skills/yao-meta-skill/SKILL.md",
"official": "/Users/laoyao/.codex/skills/.system/skill-creator/SKILL.md"
}
}
]
}
@@ -1,15 +0,0 @@
# 人工盲测结果
这组材料记录了 2026-06-29 的单人 A/B 盲测。评审者在揭晓来源前完成了 5 个判断,结果为 `yao-meta-skill` 5 胜,官方 `skill-creator` 0 胜。
## 文件
- [index.html](index.html):盲测入口。
- [adjudication.md](adjudication.md):揭晓后的统计摘要。
- [review-decisions.recorded.json](review-decisions.recorded.json):评审者选择、确认和证据边界。
- [blind-pack.json](blind-pack.json):不含答案钥匙的盲测包。
- [DO_NOT_OPEN_answer_key.json](DO_NOT_OPEN_answer_key.json):答案钥匙,只应在评审完成后打开。
## 证据边界
这可以作为单人盲测偏好证据。它不等同于 provider-backed 的独立模型执行证据,也不等同于 world-class readiness。当前缺口是逐案理由为空、评审人数为 1,尚未形成多评审者一致性证据。
@@ -1,39 +0,0 @@
# 人工盲测 Adjudication
生成时间:`2026-06-29T03:04:34Z`
## 结论
在 5 个真实常见 skill 创建场景的单人盲测中,评审者在揭晓来源前完成判断,5/5 选择了 `yao-meta-skill` 输出。
| 案例 | 评审选择 | 揭晓来源 |
| --- | --- | --- |
| `case-01-support-triage` | B | `yao-meta-skill` |
| `case-02-monthly-revenue-reconciliation` | A | `yao-meta-skill` |
| `case-03-webinar-repurposing` | B | `yao-meta-skill` |
| `case-04-incident-postmortem` | A | `yao-meta-skill` |
| `case-05-pr-review-followup` | B | `yao-meta-skill` |
## 统计
- `yao-meta-skill`5
- 官方 `skill-creator`0
- 平局:0
- 评审人数:1
- 信心程度:5 个判断均为 `1.0`
## 盲审确认
评审者确认:
> 确认:我是在完成五个判断之后才让你打开答案钥匙的,评审前没有看来源。以上 5 个判断都是揭晓来源前完成的。
## 证据边界
这可以作为单人独立盲测偏好证据。它不等同于 provider-backed 独立模型执行证据,因为两个输出是本地按两份 skill 说明生成的。
当前缺口:
- 每个案例的 `reason` 字段为空,缺少逐案 rationale。
- 评审人数为 1,尚未形成多评审者一致性证据。
- 尚未加入外部冻结 holdout 任务集。
@@ -1,98 +0,0 @@
{
"schema_version": "1.0",
"seed": "blind-human-review-2026-06-29-v1",
"generated_by": "Codex 在本地套用两份 skill 说明生成",
"evidence_boundary": "人类盲测评审起始包;不是 provider-backed 的独立模型执行证据。",
"cases": [
{
"id": "case-01-support-triage",
"title": "客服工单分诊 Skill",
"scenario": "一个 B2B SaaS 团队每天都要处理客户工单:判断分类、紧急程度、起草首轮回复,并把账务、安全、故障类问题升级给对应负责人。他们希望把这个重复流程做成一个给支持团队使用的 Codex skill。",
"user_prompt": "请把我们反复使用的客服工单分诊流程做成一个团队可复用的 skill。输入包括原始工单文本、客户等级、产品模块和近期故障记录。输出需要包含问题分类、紧急程度、首轮回复草稿、升级负责人和判断依据。不要把 PII 泄露到报告里。",
"rubric": [
"是否有清楚的触发边界和近邻排除。",
"是否是可复用的 skill 包结构,而不只是一个提示词。",
"是否定义了分类、紧急程度、回复、升级和证据的输出契约。",
"是否处理 PII 和客户内容的隐私风险。",
"是否有能发现错误升级和泛泛回复的评测方案。"
],
"variants": {
"A": "## 建议 Skillsupport-triage\n\n### 目的\n创建一个简洁的 skill,帮助 Codex 对 B2B SaaS 客服工单进行分诊,并起草首轮回复。\n\n### 建议包结构\n```\nsupport-triage/\n SKILL.md\n agents/openai.yaml\n references/\n triage-taxonomy.md\n escalation-policy.md\n```\n\n### SKILL.md 草稿\n```markdown\n---\nname: support-triage\ndescription: 对 B2B SaaS 客服工单进行分诊并起草首轮回复。当用户提供原始工单文本、客户等级、产品模块、故障记录,或需要紧急程度、分类、升级建议时使用。\n---\n\n# 客服工单分诊\n\n使用这个 skill 对入站工单分类、起草合适的首轮回复,并识别是否需要升级。\n\n## 工作流\n1. 阅读工单文本、客户等级、产品模块和近期故障记录。\n2. 将工单归为一个主分类:账务、访问权限、缺陷、故障、功能请求、安全、数据/隐私、上手问题或其他。\n3. 标记紧急程度:低、普通、高、严重。\n4. 起草首轮回复:确认问题、只询问必要补充信息,并避免没有依据的承诺。\n5. 对安全、隐私、严重故障、数据丢失或企业客户影响问题进行升级。\n6. 汇报判断依据,但不要复制不必要的 PII。\n\n## 输出格式\n- 分类:\n- 紧急程度:\n- 首轮回复:\n- 升级负责人:\n- 判断依据:\n- 缺失信息:\n\n## 参考资料\n- 分类规则见 `references/triage-taxonomy.md`。\n- 升级标准见 `references/escalation-policy.md`。\n```\n\n### agents/openai.yaml\n```yaml\ndisplay_name: 客服工单分诊\nshort_description: 对客服工单分类,并起草首轮回复。\ndefault_prompt: 请分诊这个客服工单,并起草首轮回复。\n```\n\n### 资源\n- `references/triage-taxonomy.md`:分类定义、紧急程度提示和示例。\n- `references/escalation-policy.md`:升级负责人和升级标准。\n\n### 验证\n用账务、安全、故障和功能请求等代表性工单测试。确认输出会最小化 PII,并且严重问题会被升级。\n",
"B": "## Skill 包建议:support-triage\n\n### 边界\n负责重复出现的客服工单分诊:用户提供工单文本以及客户/产品上下文,需要结构化路由决策。不要用于一次性文案润色、泛泛的客服同理心训练、CRM 配置,或超出升级范围的法律/安全事件处置。\n\n### 输出契约\n这个 skill 必须返回:\n- `category`\n- `urgency`\n- `first_response_draft`\n- `escalation_owner`\n- `evidence_used`\n- `missing_information`\n- `pii_handling_note`\n\n### 包结构\n```\nsupport-triage/\n SKILL.md\n agents/interface.yaml\n references/\n triage-taxonomy.md\n escalation-policy.md\n privacy-redaction.md\n evals/\n trigger_cases.json\n output/\n cases.jsonl\n fixtures/\n reports/\n output-risk-profile.md\n output_quality_scorecard.md\n```\n\n### SKILL.md\n```markdown\n---\nname: support-triage\ndescription: 将重复出现的 B2B SaaS 客服工单分诊为分类、紧急程度、首轮回复、升级负责人、判断依据和缺失信息。当输入包含原始工单、客户等级、产品模块、故障记录或支持队列上下文时使用。不要用于一次性文案润色、CRM 设置、法律建议或最终安全事件处置。\n---\n\n# 客服工单分诊\n\n## 工作流\n1. 确认这是重复的工单分诊任务,而不是一次性文案润色。\n2. 阅读工单文本、客户等级、产品模块和故障记录。\n3. 使用 `references/triage-taxonomy.md` 判断分类和紧急程度。\n4. 按 `references/escalation-policy.md` 检查升级标准。\n5. 起草首轮回复:确认问题、避免无依据承诺,只请求最少的缺失信息。\n6. 按 `references/privacy-redaction.md` 对 PII 做脱敏或摘要。\n7. 严格按输出契约返回。\n\n## 必填输出\n使用这些字段:\n- category\n- urgency\n- first_response_draft\n- escalation_owner\n- evidence_used\n- missing_information\n- pii_handling_note\n```\n\n### agents/interface.yaml\n```yaml\ndisplay_name: 客服工单分诊\nshort_description: 对工单分类、起草首轮回复,并给出升级依据。\ndefault_prompt: 请用分类、紧急程度、回复、升级负责人和依据来分诊这个客服工单。\n```\n\n### 评测用例\n1. 企业客户在已知故障期间提交工单:必须标为 `critical`,并升级给 incident commander。\n2. SMB 客户的账务困惑:不应过度升级。\n3. 带客户邮箱和 token 片段的安全披露:必须脱敏 token,并升级安全团队。\n4. 伪装成投诉的功能请求:应归类为功能请求,紧急程度为普通。\n5. 近邻请求:“把这段回复改得更温和”不应触发包级分诊。\n\n### 发布门禁\n- 触发评测:正例、反例、近邻文案润色。\n- 输出评测:首轮回复不能编造 SLA,升级必须匹配策略。\n- 隐私检查:报告不能保存原始工单 PII。\n- 审查备注:如果分类规则或升级负责人未提供,标记为 `missing evidence`,不要编造。\n\n### 下一步\n加入 3 个匿名工单 fixture,运行输出评测,并记录错误升级、泛泛回复和 PII 泄露的失败分类。\n"
},
"html_report": "case-01-support-triage.html"
},
{
"id": "case-02-monthly-revenue-reconciliation",
"title": "月度收入对账 Skill",
"scenario": "一个财务运营团队每个月结账前都要比对 Stripe 导出、数据仓库发票 CSV 和人工调整表,找出金额、币种、发票和调整项的不一致。",
"user_prompt": "请创建一个用于月度收入对账的可复用 skill。输入是 Stripe balance export CSV、warehouse invoice CSV 和 adjustments sheet。输出需要标出不一致项、解释可能原因,并生成可用于月结的摘要。准确性比速度更重要。",
"rubric": [
"是否识别出这是 file-backed 且准确性敏感的任务。",
"是否定义了确定性脚本和资源边界。",
"是否说明输入/输出 schema 与对账容差。",
"是否包含 fixture 和失败用例验证。",
"是否避免编造财务事实或隐藏未解决差异。"
],
"variants": {
"A": "## Skill 包建议:revenue-reconciliation\n\n### 边界\n负责围绕 Stripe balance export、warehouse invoice CSV 和调整表的重复月结对账。排除税务建议、收入确认政策决策、支付渠道配置和一次性表格美化。\n\n### 风险等级\nGovernedfile-backed,准确性敏感。任何可用于月结的结论前,都必须有确定性解析和可见的未解决项目。\n\n### 包结构\n```\nrevenue-reconciliation/\n SKILL.md\n agents/interface.yaml\n scripts/\n reconcile_revenue.py\n validate_reconciliation_fixture.py\n references/\n input-schema.md\n tolerance-policy.md\n close-summary-contract.md\n evals/\n output/\n cases.jsonl\n fixtures/\n stripe_sample.csv\n warehouse_sample.csv\n adjustments_sample.csv\n reports/\n output-risk-profile.md\n output_quality_scorecard.md\n trust_report.md\n```\n\n### SKILL.md\n```markdown\n---\nname: revenue-reconciliation\ndescription: 对来自 Stripe 导出、warehouse invoice CSV 和调整表的重复月结收入文件进行对账。用于 file-backed 差异检测、可能原因分析、未解决项目报告和月结摘要。不要用于收入确认建议、税务指导、支付渠道配置或一次性表格格式整理。\n---\n\n# 收入对账\n\n## 工作流\n1. 要求提供所有输入文件;缺失文件必须标记为 `missing evidence`。\n2. 阅读 `references/input-schema.md`,先校验列再分析。\n3. 运行 `scripts/reconcile_revenue.py`,规范化 ID、币种、金额精度、日期和调整项关联。\n4. 审查 JSON 输出,并按缺失发票、金额差异、币种差异、重复项、时间差异或仅调整项分类。\n5. 只基于脚本证据生成月结摘要。\n6. 保持未解决差异可见。不要编造原因、审批或政策判断。\n\n## 输出契约\n- input_files\n- validation_status\n- totals_by_source\n- matched_count\n- mismatch_table\n- likely_causes\n- unresolved_items\n- close_ready_summary\n- missing_evidence\n```\n\n### 确定性脚本契约\n`scripts/reconcile_revenue.py` 应接受:\n```bash\npython3 scripts/reconcile_revenue.py --stripe stripe.csv --warehouse warehouse.csv --adjustments adjustments.csv --output reconciliation.json\n```\n\n它应返回包含源行 ID 的结构化 JSON,让摘要里的每个结论都能追溯到 file-backed fixture。\n\n### 评测\n- Fixture 1:所有记录匹配。\n- Fixture 2Stripe 有付款,但 warehouse 缺发票。\n- Fixture 3warehouse 金额超过容差。\n- Fixture 4:人工调整解释了差异。\n- 近邻请求:“把这个表格弄好看一点”不应路由到这里。\n\n### 门禁\n- 汇总前必须通过输入 schema 校验。\n- 如果遗漏未解决差异,输出评测必须失败。\n- Trust check 应标记网络访问为不必要。\n- Review Studio 应在晋级前显示 file-backed fixture 覆盖和未解决差异处理。\n",
"B": "## 建议 Skillrevenue-reconciliation\n\n### 目的\n帮助 Codex 对 Stripe、数据仓库发票和人工调整表中的月度收入记录进行对账。\n\n### 建议包结构\n```\nrevenue-reconciliation/\n SKILL.md\n agents/openai.yaml\n scripts/\n reconcile_revenue.py\n references/\n csv-schema.md\n```\n\n### SKILL.md 草稿\n```markdown\n---\nname: revenue-reconciliation\ndescription: 对 Stripe balance export、warehouse invoice CSV 和调整表中的月度收入数据进行对账。当用户要求比较收入文件、找出不一致项或准备月结摘要时使用。\n---\n\n# 收入对账\n\n## 工作流\n1. 确认用户提供了 Stripe 导出、warehouse invoice CSV 和调整表。\n2. 阅读 `references/csv-schema.md`,了解预期列。\n3. 使用用户提供的文件运行 `scripts/reconcile_revenue.py`。\n4. 审查不一致项,并总结可能原因。\n5. 不要编造缺失值。清楚标记未解决记录。\n\n## 输出\n- 已检查文件\n- 匹配总额\n- 不一致项\n- 可能原因\n- 未解决项目\n- 月结摘要\n```\n\n### 脚本\n`scripts/reconcile_revenue.py` 应解析 CSV 输入,规范化 invoice ID 和币种,比较金额,并输出 JSON 供 Codex 总结。\n\n### agents/openai.yaml\n```yaml\ndisplay_name: 收入对账\nshort_description: 比对收入 CSV,并总结月结差异。\ndefault_prompt: 请对这些收入文件进行对账,并生成月结摘要。\n```\n\n### 验证\n使用包含匹配发票、缺失发票、重复发票和仅调整项记录的样例 CSV。确认未解决差异不会被隐藏。\n"
},
"html_report": "case-02-monthly-revenue-reconciliation.html"
},
{
"id": "case-03-webinar-repurposing",
"title": "Webinar 内容复用 Skill",
"scenario": "一个市场团队经常把 webinar 逐字稿改写成 LinkedIn 帖子、邮件 teaser 和 newsletter 段落,同时必须保证所有说法都有来源,并避开禁止宣传的 claim。",
"user_prompt": "请做一个可复用 skill,把 webinar 逐字稿复用成市场内容。输入包括逐字稿、讲者姓名、产品定位说明和禁止使用的 claim。输出包括 LinkedIn 帖子、邮件 teaser、newsletter 段落、可引用金句和来源依据说明。",
"rubric": [
"是否保留来源约束,并处理 banned claims。",
"是否定义可重复的多渠道输出格式。",
"是否把语气和定位资料放到 references,避免入口膨胀。",
"是否有针对幻觉 claim 和泛泛市场文案的评测。",
"是否在中等治理风险下保持 skill 足够轻量。"
],
"variants": {
"A": "## 建议 Skillwebinar-repurposer\n\n### 目的\n创建一个 skill,把 webinar 逐字稿转成可复用的市场内容。\n\n### 包结构\n```\nwebinar-repurposer/\n SKILL.md\n agents/openai.yaml\n references/\n brand-voice.md\n banned-claims.md\n```\n\n### SKILL.md 草稿\n```markdown\n---\nname: webinar-repurposer\ndescription: 将 webinar 逐字稿复用成 LinkedIn 帖子、邮件 teaser、newsletter 段落、可引用金句和来源依据说明。当用户提供逐字稿、讲者、定位说明或禁止 claim 时使用。\n---\n\n# Webinar 内容复用\n\n## 工作流\n1. 阅读逐字稿、讲者姓名、产品定位说明和禁止 claim。\n2. 提取核心主题、最强的来源支持观点和可用引语。\n3. 起草一条 LinkedIn 帖子、一段邮件 teaser、一段 newsletter 和若干金句。\n4. 对照逐字稿和禁止 claim 检查每个说法。\n5. 为重要 claim 添加来源依据说明。\n\n## 输出\n- LinkedIn 帖子\n- 邮件 teaser\n- Newsletter 段落\n- 可引用金句\n- 来源依据说明\n- 已避免的 claim\n\n## 参考资料\n语气见 `references/brand-voice.md`,禁止 claim 见 `references/banned-claims.md`。\n```\n\n### agents/openai.yaml\n```yaml\ndisplay_name: Webinar 内容复用\nshort_description: 将 webinar 逐字稿转成有来源依据的市场内容。\ndefault_prompt: 请把这份 webinar 逐字稿复用成可发布的多渠道市场内容。\n```\n\n### 验证\n用包含强金句、证据较弱、以及容易误用禁止 claim 的逐字稿测试。确认输出会避免没有依据的 claim。\n",
"B": "## Skill 包建议:webinar-repurposer\n\n### 边界\n负责在提供来源逐字稿和定位约束时,把逐字稿复用为市场内容。排除全新 campaign strategy、没有依据的产品 claim、法律审核和一次性文案润色。\n\n### 类型\nProduction-light。它需要输出质量检查和 banned-claim 防护,但除非涉及受监管 claim 或上市公司披露规则,否则不需要做成很重的 governed 包。\n\n### 包结构\n```\nwebinar-repurposer/\n SKILL.md\n agents/interface.yaml\n references/\n brand-voice.md\n positioning-notes.md\n banned-claims.md\n evals/\n output/\n cases.jsonl\n reports/\n output-risk-profile.md\n prompt-quality-profile.md\n```\n\n### SKILL.md\n```markdown\n---\nname: webinar-repurposer\ndescription: 将重复出现的 webinar 逐字稿复用为有来源依据的 LinkedIn 帖子、邮件 teaser、newsletter 段落、金句和 claim 依据说明。当提供逐字稿、讲者、定位说明或禁止 claim 时使用。不要用于无依据的发布 claim、法律审批、全新 campaign strategy 或一次性文案润色。\n---\n\n# Webinar 内容复用\n\n## 工作流\n1. 确认逐字稿是事实来源。\n2. 提取有来源支持的主题、讲者背书的引语和可安全复用的 claim。\n3. 起草前先检查 `references/banned-claims.md`。\n4. 生成各渠道输出,但不要添加逐字稿中没有的性能数字、客户结果或产品承诺。\n5. 添加来源依据说明,把每个主要 claim 绑定到逐字稿证据。\n\n## 必填输出\n- linkedin_post\n- email_teaser\n- newsletter_section\n- pull_quotes\n- source_grounding_notes\n- claims_avoided\n- missing_evidence\n```\n\n### 输出风险画像\n常见失败:\n- 生成任何产品都能用的泛泛市场话术。\n- 编造指标或客户结果。\n- 过度改写金句,导致意思偏离。\n- 因为某个 claim 很有吸引力而忽略 banned claims。\n\n### 输出评测用例\n1. 逐字稿包含诱人的“guaranteed ROI”禁止 claim:输出必须避开。\n2. 逐字稿没有量化证明:输出不能编造数字。\n3. 讲者原话不够顺:可以轻微修语法,但必须保留原意。\n4. 近邻请求:“从零写一个新 campaign idea”不应路由到这里。\n\n### 审查门禁\n- 必填 section 必须全部出现。\n- Banned claim 检查必须显式出现。\n- 来源依据说明必须引用逐字稿位置或原话片段。\n- 缺失证据必须被标出,而不是用通用卖点填补。\n"
},
"html_report": "case-03-webinar-repurposing.html"
},
{
"id": "case-04-incident-postmortem",
"title": "故障复盘 Skill",
"scenario": "一个基础设施团队经常把 Slack 故障时间线、告警数据和部署记录整理成故障复盘和后续行动项。",
"user_prompt": "请创建一个可复用的 governed skill,用于故障复盘。输入包括告警时间线、Slack 摘要、部署记录、客户影响说明和负责人列表。输出应包含时间线、影响、根因假设、行动项、未解决证据和后续负责人矩阵。",
"rubric": [
"是否处理 governed/运营风险和未解决证据。",
"是否区分假设和已确认根因。",
"是否定义行动项负责人矩阵和回滚/跟进边界。",
"是否要求 file-backed 或 source-backed 证据。",
"是否有针对 blame language 和编造因果的审查门禁。"
],
"variants": {
"A": "## Skill 包建议:incident-postmortem\n\n### 边界\n负责根据 source-backed 时间线、Slack 摘要、部署记录、客户影响说明和负责人列表起草 governed 故障复盘。不要用于实时 incident command、最终 RCA 签核、HR/归责分析或面向客户的法律声明。\n\n### 类型\nGoverned。这个包会影响运营责任归属,如果证据不足,容易制造虚假因果。\n\n### 包结构\n```\nincident-postmortem/\n SKILL.md\n agents/interface.yaml\n references/\n postmortem-contract.md\n severity-policy.md\n blame-free-language.md\n action-owner-matrix.md\n evals/\n output/\n cases.jsonl\n fixtures/\n alert_timeline.json\n slack_summary.md\n deploy_notes.md\n reports/\n output-risk-profile.md\n output_quality_scorecard.md\n trust_report.md\n review-studio.html\n```\n\n### SKILL.md\n```markdown\n---\nname: incident-postmortem\ndescription: 根据告警时间线、Slack 摘要、部署记录、影响说明和负责人列表起草 governed 故障复盘。用于 source-backed 时间线重建、影响总结、根因假设、行动项、未解决证据和后续负责人矩阵。不要用于实时故障指挥、最终 RCA 审批、归责或法律/客户承诺。\n---\n\n# 故障复盘\n\n## 工作流\n1. 要求提供 source-backed 故障输入,并把缺失输入列为 `missing evidence`。\n2. 只根据已提供时间戳建立时间线;如需推断顺序,必须明确标注。\n3. 分开列出 `confirmed_facts`、`root_cause_hypotheses` 和 `unresolved_evidence`。\n4. 总结客户影响,但不要编造受影响账户、持续时间或 SLA 违约。\n5. 创建行动项:包含 owner、due date、验证信号和回滚/跟进边界。\n6. 使用 `references/blame-free-language.md` 的无责语言。\n7. 除非 reviewer 明确提供,否则最终 RCA 审批不属于本 skill。\n\n## 输出契约\n- incident_summary\n- source_inputs\n- timeline\n- customer_impact\n- confirmed_facts\n- root_cause_hypotheses\n- unresolved_evidence\n- action_items\n- owner_matrix\n- approval_status\n```\n\n### 输出评测用例\n1. Slack 和部署记录冲突:必须保留为未解决证据。\n2. 告警时间线缺恢复时间:不能编造持续时长。\n3. 用户要求实时故障决策:应路由出去,或说明本 skill 只做复盘。\n4. 来源材料带有归责语言:输出必须改写为系统/流程语言。\n5. 缺负责人列表:行动项 owner 字段应为 `missing evidence`。\n\n### 门禁\n- 时间线和部署记录需要 file-backed fixture 覆盖。\n- 输出评测禁止编造因果和隐藏未解决证据。\n- Review Studio 在人工 reviewer 审批行动负责人矩阵前保持 warning。\n- Trust report 应显示无网络和无破坏性操作。\n",
"B": "## 建议 Skillincident-postmortem\n\n### 目的\n帮助 Codex 根据时间线、Slack 摘要、部署记录、影响说明和负责人列表创建结构化故障复盘。\n\n### 包结构\n```\nincident-postmortem/\n SKILL.md\n agents/openai.yaml\n references/\n postmortem-template.md\n severity-policy.md\n```\n\n### SKILL.md 草稿\n```markdown\n---\nname: incident-postmortem\ndescription: 根据告警时间线、Slack 摘要、部署记录、客户影响说明和负责人列表创建故障复盘。当用户需要时间线、影响、根因假设、行动项、未解决证据或负责人矩阵时使用。\n---\n\n# 故障复盘\n\n## 工作流\n1. 收集告警时间线、Slack 摘要、部署记录、客户影响说明和负责人列表。\n2. 建立按时间排序的时间线。\n3. 总结客户和系统影响。\n4. 识别已确认事实和根因假设。\n5. 在提供负责人和截止时间时,起草行动项。\n6. 清楚标记未解决证据。\n7. 避免归责式语言。\n\n## 输出\n- 故障摘要\n- 时间线\n- 影响\n- 根因假设\n- 已确认事实\n- 未解决证据\n- 行动项\n- 负责人矩阵\n```\n\n### agents/openai.yaml\n```yaml\ndisplay_name: 故障复盘\nshort_description: 根据故障证据生成结构化复盘。\ndefault_prompt: 请把这些故障证据整理成复盘和负责人矩阵。\n```\n\n### 验证\n用证据完整、缺部署记录、Slack 说法冲突和暂时没有根因的 case 测试。确认 skill 会区分事实和假设。\n"
},
"html_report": "case-04-incident-postmortem.html"
},
{
"id": "case-05-pr-review-followup",
"title": "PR Review 跟进 Skill",
"scenario": "一个小工程团队经常收到 GitHub PR review comments,希望 Codex 能把评论转成补丁、回复摘要和验证记录。",
"user_prompt": "请设计一个用于处理 PR review comments 的可复用 skill。输入包括 review comments、变更文件、失败 CI 说明和 maintainer preferences。输出需要分组评论、只修改相关文件、写回复说明并运行验证。必须避免回滚无关的用户改动。",
"rubric": [
"是否理解 code-review 跟进和 dirty worktree 安全。",
"是否定义评论分组、补丁、回复和验证工作流。",
"是否避免过度重构和无关 revert。",
"是否说明变更后需要的命令和证据。",
"是否定义一般 code review 与评论跟进的触发排除。"
],
"variants": {
"A": "## 建议 Skillpr-review-followup\n\n### 目的\n创建一个 skill,帮助 Codex 安全处理 PR review comments,并总结回复。\n\n### 包结构\n```\npr-review-followup/\n SKILL.md\n agents/openai.yaml\n references/\n response-style.md\n```\n\n### SKILL.md 草稿\n```markdown\n---\nname: pr-review-followup\ndescription: 通过分组反馈、修改相关文件、编写回复说明和运行验证来处理 GitHub PR review comments。当用户提供 review comments、变更文件、CI 说明或 maintainer preferences 时使用。\n---\n\n# PR Review 跟进\n\n## 工作流\n1. 阅读所有 review comments,并按文件、主题和严重程度分组。\n2. 编辑前检查受影响文件。\n3. 只修改处理 comments 所需的文件。\n4. 不要回滚无关用户改动。\n5. 运行相关测试或 CI 复现命令。\n6. 总结变更,并为 reviewer 起草回复说明。\n\n## 输出\n- 评论分组\n- 修改文件\n- 验证命令\n- Reviewer 回复说明\n- 剩余问题\n```\n\n### agents/openai.yaml\n```yaml\ndisplay_name: PR Review 跟进\nshort_description: 处理 PR comments 并准备 reviewer 回复。\ndefault_prompt: 请处理这些 PR review comments,并总结验证结果。\n```\n\n### 验证\n用需要代码修改、文档修改、无需修改只需解释、以及 reviewer 要求冲突的 comments 测试。\n",
"B": "## Skill 包建议:pr-review-followup\n\n### 边界\n负责 PR 已经有明确 reviewer comments、变更文件或 CI 说明之后的评论跟进。排除首次 code review、大范围重构、issue triage,以及没有绑定评论的推测性清理。\n\n### 包结构\n```\npr-review-followup/\n SKILL.md\n agents/interface.yaml\n references/\n response-style.md\n dirty-worktree-safety.md\n verification-policy.md\n evals/\n trigger_cases.json\n output/\n cases.jsonl\n reports/\n output-risk-profile.md\n output_quality_scorecard.md\n```\n\n### SKILL.md\n```markdown\n---\nname: pr-review-followup\ndescription: 处理具体 PR review comments:分组反馈、只修改相关文件、保留无关用户改动、起草 reviewer 回复并运行验证。当提供 review comments、变更文件、失败 CI 说明或 maintainer preferences 时使用。不要用于首次 code review、大范围重构、issue triage 或无关清理。\n---\n\n# PR Review 跟进\n\n## 工作流\n1. 编辑前记录 git status,并识别用户已经改动的文件。\n2. 按文件、行为、严重程度,以及是否需要代码、测试、文档或仅解释来分组 review comments。\n3. 修改前阅读受影响代码和附近测试。\n4. 只修改与评论绑定的文件。不要回滚无关改动,也不要格式化未触碰文件。\n5. 运行有针对性的验证,并记录命令和结果。\n6. 起草 reviewer 回复说明,把每组评论映射到变更、无需修改的理由或剩余问题。\n7. 如果评论冲突,停止并询问哪个 reviewer 指令优先。\n\n## 输出契约\n- comment_groups\n- patch_summary\n- files_changed\n- verification\n- reviewer_response_notes\n- unresolved_questions\n- unrelated_changes_preserved\n```\n\n### 输出评测用例\n1. 评论要求添加特定 null check:输出必须只修改受影响函数,并提到测试。\n2. Reviewer 要求与 PR 范围无关的大重构:输出应标出范围风险。\n3. Dirty worktree 中有无关用户文件:输出必须保留它。\n4. 两个 reviewer comments 冲突:输出必须询问优先级,而不是猜。\n5. 近邻请求:“从零 review 这个 PR”不应触发 follow-up mode。\n\n### 门禁\n- 触发评测必须区分首次 review 和评论跟进。\n- 如果回滚或隐藏无关改动,输出评测必须失败。\n- 验证策略必须记录跳过测试的原因。\n- 回复说明必须能追溯到评论分组。\n"
},
"html_report": "case-05-pr-review-followup.html"
}
]
}
@@ -1,380 +0,0 @@
<!doctype html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>客服工单分诊 Skill - Skill 盲测评审</title>
<style>
:root {
color-scheme: light;
--bg: #f7f8fb;
--panel: #ffffff;
--ink: #20242c;
--muted: #687082;
--line: #d9deea;
--accent: #2563eb;
--accent-2: #0f766e;
--warn: #b45309;
}
* { box-sizing: border-box; }
body {
margin: 0;
font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
background: var(--bg);
color: var(--ink);
line-height: 1.55;
}
header {
padding: 28px clamp(18px, 4vw, 52px) 18px;
background: #ffffff;
border-bottom: 1px solid var(--line);
}
main { padding: 24px clamp(18px, 4vw, 52px) 52px; }
h1 { margin: 0 0 8px; font-size: clamp(26px, 3vw, 38px); letter-spacing: 0; }
h2 { margin: 0 0 12px; font-size: 20px; }
h3 { margin: 18px 0 8px; font-size: 16px; }
p { margin: 0 0 10px; }
a { color: var(--accent); text-decoration: none; }
a:hover { text-decoration: underline; }
.meta, .note { color: var(--muted); }
.grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; align-items: start; }
.card, .panel {
background: var(--panel);
border: 1px solid var(--line);
border-radius: 8px;
padding: 18px;
}
.case-list { display: grid; gap: 12px; margin-top: 18px; }
.case-row {
display: grid;
grid-template-columns: 1fr auto;
gap: 12px;
align-items: center;
background: var(--panel);
border: 1px solid var(--line);
border-radius: 8px;
padding: 14px 16px;
}
.badge {
display: inline-flex;
align-items: center;
min-height: 28px;
padding: 4px 10px;
border-radius: 999px;
background: #e8f0ff;
color: #1d4ed8;
font-size: 13px;
font-weight: 650;
}
.rubric { margin: 0; padding-left: 20px; }
.rubric li { margin-bottom: 6px; }
.variant {
background: var(--panel);
border: 1px solid var(--line);
border-radius: 8px;
overflow: hidden;
}
.variant-head {
display: flex;
justify-content: space-between;
gap: 12px;
align-items: center;
padding: 12px 16px;
border-bottom: 1px solid var(--line);
background: #f2f5fa;
}
.variant-body { padding: 16px; }
pre {
overflow: auto;
padding: 12px;
border-radius: 6px;
background: #111827;
color: #f9fafb;
font-size: 13px;
}
code { font-family: "SFMono-Regular", Consolas, monospace; }
.review-box {
margin-top: 18px;
border: 1px solid var(--line);
border-radius: 8px;
padding: 16px;
background: #fff;
}
.controls { display: flex; flex-wrap: wrap; gap: 10px; margin: 12px 0; }
button, .button {
border: 1px solid var(--line);
border-radius: 6px;
background: #fff;
color: var(--ink);
min-height: 36px;
padding: 7px 12px;
cursor: pointer;
font-weight: 650;
}
button.primary, .button.primary { background: var(--accent); border-color: var(--accent); color: #fff; }
textarea {
width: 100%;
min-height: 96px;
resize: vertical;
border: 1px solid var(--line);
border-radius: 6px;
padding: 10px;
font: inherit;
}
.warn { color: var(--warn); font-weight: 650; }
.split { display: flex; flex-wrap: wrap; gap: 10px; }
.small { font-size: 13px; }
@media (max-width: 900px) {
.grid { grid-template-columns: 1fr; }
.case-row { grid-template-columns: 1fr; }
}
</style>
</head>
<body data-case-id="case-01-support-triage">
<header>
<div class="split"><a class="button" href="index.html">返回入口</a><a class="button" href="case-02-monthly-revenue-reconciliation.html">下一个</a></div>
<h1>客服工单分诊 Skill</h1>
<p class="meta">A/B 盲测评审。记录完判断前,不要打开答案钥匙。</p>
</header>
<main>
<section class="panel">
<h2>场景</h2>
<p>一个 B2B SaaS 团队每天都要处理客户工单:判断分类、紧急程度、起草首轮回复,并把账务、安全、故障类问题升级给对应负责人。他们希望把这个重复流程做成一个给支持团队使用的 Codex skill。</p>
<h3>用户请求</h3>
<p>请把我们反复使用的客服工单分诊流程做成一个团队可复用的 skill。输入包括原始工单文本、客户等级、产品模块和近期故障记录。输出需要包含问题分类、紧急程度、首轮回复草稿、升级负责人和判断依据。不要把 PII 泄露到报告里。</p>
<h3>评审标准</h3>
<ol class="rubric"><li>是否有清楚的触发边界和近邻排除。</li>
<li>是否是可复用的 skill 包结构,而不只是一个提示词。</li>
<li>是否定义了分类、紧急程度、回复、升级和证据的输出契约。</li>
<li>是否处理 PII 和客户内容的隐私风险。</li>
<li>是否有能发现错误升级和泛泛回复的评测方案。</li></ol>
</section>
<div class="grid" style="margin-top:18px">
<section class="variant">
<div class="variant-head">
<h2>方案 A</h2>
<span class="badge">来源已隐藏</span>
</div>
<div class="variant-body">
<h2>建议 Skillsupport-triage</h2>
<h3>目的</h3>
<p>创建一个简洁的 skill,帮助 Codex 对 B2B SaaS 客服工单进行分诊,并起草首轮回复。</p>
<h3>建议包结构</h3>
<pre><code>support-triage/
SKILL.md
agents/openai.yaml
references/
triage-taxonomy.md
escalation-policy.md</code></pre>
<h3>SKILL.md 草稿</h3>
<pre><code>---
name: support-triage
description: 对 B2B SaaS 客服工单进行分诊并起草首轮回复。当用户提供原始工单文本、客户等级、产品模块、故障记录,或需要紧急程度、分类、升级建议时使用。
---
# 客服工单分诊
使用这个 skill 对入站工单分类、起草合适的首轮回复,并识别是否需要升级。
## 工作流
1. 阅读工单文本、客户等级、产品模块和近期故障记录。
2. 将工单归为一个主分类:账务、访问权限、缺陷、故障、功能请求、安全、数据/隐私、上手问题或其他。
3. 标记紧急程度:低、普通、高、严重。
4. 起草首轮回复:确认问题、只询问必要补充信息,并避免没有依据的承诺。
5. 对安全、隐私、严重故障、数据丢失或企业客户影响问题进行升级。
6. 汇报判断依据,但不要复制不必要的 PII。
## 输出格式
- 分类:
- 紧急程度:
- 首轮回复:
- 升级负责人:
- 判断依据:
- 缺失信息:
## 参考资料
- 分类规则见 `references/triage-taxonomy.md`。
- 升级标准见 `references/escalation-policy.md`。</code></pre>
<h3>agents/openai.yaml</h3>
<pre><code>display_name: 客服工单分诊
short_description: 对客服工单分类,并起草首轮回复。
default_prompt: 请分诊这个客服工单,并起草首轮回复。</code></pre>
<h3>资源</h3>
<ul>
<li>`references/triage-taxonomy.md`:分类定义、紧急程度提示和示例。</li>
<li>`references/escalation-policy.md`:升级负责人和升级标准。</li>
</ul>
<h3>验证</h3>
<p>用账务、安全、故障和功能请求等代表性工单测试。确认输出会最小化 PII,并且严重问题会被升级。</p>
</div>
</section>
<section class="variant">
<div class="variant-head">
<h2>方案 B</h2>
<span class="badge">来源已隐藏</span>
</div>
<div class="variant-body">
<h2>Skill 包建议:support-triage</h2>
<h3>边界</h3>
<p>负责重复出现的客服工单分诊:用户提供工单文本以及客户/产品上下文,需要结构化路由决策。不要用于一次性文案润色、泛泛的客服同理心训练、CRM 配置,或超出升级范围的法律/安全事件处置。</p>
<h3>输出契约</h3>
<p>这个 skill 必须返回:</p>
<ul>
<li>`category`</li>
<li>`urgency`</li>
<li>`first_response_draft`</li>
<li>`escalation_owner`</li>
<li>`evidence_used`</li>
<li>`missing_information`</li>
<li>`pii_handling_note`</li>
</ul>
<h3>包结构</h3>
<pre><code>support-triage/
SKILL.md
agents/interface.yaml
references/
triage-taxonomy.md
escalation-policy.md
privacy-redaction.md
evals/
trigger_cases.json
output/
cases.jsonl
fixtures/
reports/
output-risk-profile.md
output_quality_scorecard.md</code></pre>
<h3>SKILL.md</h3>
<pre><code>---
name: support-triage
description: 将重复出现的 B2B SaaS 客服工单分诊为分类、紧急程度、首轮回复、升级负责人、判断依据和缺失信息。当输入包含原始工单、客户等级、产品模块、故障记录或支持队列上下文时使用。不要用于一次性文案润色、CRM 设置、法律建议或最终安全事件处置。
---
# 客服工单分诊
## 工作流
1. 确认这是重复的工单分诊任务,而不是一次性文案润色。
2. 阅读工单文本、客户等级、产品模块和故障记录。
3. 使用 `references/triage-taxonomy.md` 判断分类和紧急程度。
4. 按 `references/escalation-policy.md` 检查升级标准。
5. 起草首轮回复:确认问题、避免无依据承诺,只请求最少的缺失信息。
6. 按 `references/privacy-redaction.md` 对 PII 做脱敏或摘要。
7. 严格按输出契约返回。
## 必填输出
使用这些字段:
- category
- urgency
- first_response_draft
- escalation_owner
- evidence_used
- missing_information
- pii_handling_note</code></pre>
<h3>agents/interface.yaml</h3>
<pre><code>display_name: 客服工单分诊
short_description: 对工单分类、起草首轮回复,并给出升级依据。
default_prompt: 请用分类、紧急程度、回复、升级负责人和依据来分诊这个客服工单。</code></pre>
<h3>评测用例</h3>
<p>1. 企业客户在已知故障期间提交工单:必须标为 `critical`,并升级给 incident commander。</p>
<p>2. SMB 客户的账务困惑:不应过度升级。</p>
<p>3. 带客户邮箱和 token 片段的安全披露:必须脱敏 token,并升级安全团队。</p>
<p>4. 伪装成投诉的功能请求:应归类为功能请求,紧急程度为普通。</p>
<p>5. 近邻请求:“把这段回复改得更温和”不应触发包级分诊。</p>
<h3>发布门禁</h3>
<ul>
<li>触发评测:正例、反例、近邻文案润色。</li>
<li>输出评测:首轮回复不能编造 SLA,升级必须匹配策略。</li>
<li>隐私检查:报告不能保存原始工单 PII。</li>
<li>审查备注:如果分类规则或升级负责人未提供,标记为 `missing evidence`,不要编造。</li>
</ul>
<h3>下一步</h3>
<p>加入 3 个匿名工单 fixture,运行输出评测,并记录错误升级、泛泛回复和 PII 泄露的失败分类。</p>
</div>
</section>
</div>
<section class="review-box">
<h2>你的判断</h2>
<p class="note">只根据评审标准和页面里可见的两个输出做判断。选择会保存到当前浏览器的本地存储里,也可以回到入口页导出。</p>
<div class="controls" role="radiogroup" aria-label="胜出方案">
<label><input type="radio" name="winner" value="A"> 方案 A 更好</label>
<label><input type="radio" name="winner" value="B"> 方案 B 更好</label>
<label><input type="radio" name="winner" value="tie"> 平局 / 没有明显胜出</label>
</div>
<label for="confidence">信心程度</label>
<div class="controls">
<select id="confidence">
<option value="">请选择</option>
<option value="0.4">0.4,较弱</option>
<option value="0.6">0.6,中等</option>
<option value="0.8">0.8,较强</option>
<option value="1.0">1.0,非常确定</option>
</select>
</div>
<label for="reason">理由</label>
<textarea id="reason" placeholder="为什么这个方案更好?请写出具体的评审标准差异。"></textarea>
<div class="controls">
<button class="primary" type="button" onclick="saveDecision()">保存判断</button>
<button type="button" onclick="clearDecision()">清空</button>
</div>
<p id="save-status" class="small note"></p>
</section>
</main>
<script>
const caseId = document.body.dataset.caseId;
const key = "blindSkillReview:" + caseId;
function currentDecision() {
const selected = document.querySelector('input[name="winner"]:checked');
return {
case_id: caseId,
winner_variant: selected ? selected.value : "",
confidence: document.getElementById("confidence").value,
reason: document.getElementById("reason").value.trim(),
reviewed_at: new Date().toISOString()
};
}
function saveDecision() {
const decision = currentDecision();
localStorage.setItem(key, JSON.stringify(decision));
document.getElementById("save-status").textContent = "已保存:" + decision.reviewed_at;
}
function clearDecision() {
localStorage.removeItem(key);
document.querySelectorAll('input[name="winner"]').forEach(el => el.checked = false);
document.getElementById("confidence").value = "";
document.getElementById("reason").value = "";
document.getElementById("save-status").textContent = "已清空。";
}
function loadDecision() {
const raw = localStorage.getItem(key);
if (!raw) return;
const decision = JSON.parse(raw);
const selected = document.querySelector('input[name="winner"][value="' + decision.winner_variant + '"]');
if (selected) selected.checked = true;
document.getElementById("confidence").value = decision.confidence || "";
document.getElementById("reason").value = decision.reason || "";
document.getElementById("save-status").textContent = "已加载保存过的判断。";
}
loadDecision();
</script>
</body>
</html>
@@ -1,368 +0,0 @@
<!doctype html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>月度收入对账 Skill - Skill 盲测评审</title>
<style>
:root {
color-scheme: light;
--bg: #f7f8fb;
--panel: #ffffff;
--ink: #20242c;
--muted: #687082;
--line: #d9deea;
--accent: #2563eb;
--accent-2: #0f766e;
--warn: #b45309;
}
* { box-sizing: border-box; }
body {
margin: 0;
font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
background: var(--bg);
color: var(--ink);
line-height: 1.55;
}
header {
padding: 28px clamp(18px, 4vw, 52px) 18px;
background: #ffffff;
border-bottom: 1px solid var(--line);
}
main { padding: 24px clamp(18px, 4vw, 52px) 52px; }
h1 { margin: 0 0 8px; font-size: clamp(26px, 3vw, 38px); letter-spacing: 0; }
h2 { margin: 0 0 12px; font-size: 20px; }
h3 { margin: 18px 0 8px; font-size: 16px; }
p { margin: 0 0 10px; }
a { color: var(--accent); text-decoration: none; }
a:hover { text-decoration: underline; }
.meta, .note { color: var(--muted); }
.grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; align-items: start; }
.card, .panel {
background: var(--panel);
border: 1px solid var(--line);
border-radius: 8px;
padding: 18px;
}
.case-list { display: grid; gap: 12px; margin-top: 18px; }
.case-row {
display: grid;
grid-template-columns: 1fr auto;
gap: 12px;
align-items: center;
background: var(--panel);
border: 1px solid var(--line);
border-radius: 8px;
padding: 14px 16px;
}
.badge {
display: inline-flex;
align-items: center;
min-height: 28px;
padding: 4px 10px;
border-radius: 999px;
background: #e8f0ff;
color: #1d4ed8;
font-size: 13px;
font-weight: 650;
}
.rubric { margin: 0; padding-left: 20px; }
.rubric li { margin-bottom: 6px; }
.variant {
background: var(--panel);
border: 1px solid var(--line);
border-radius: 8px;
overflow: hidden;
}
.variant-head {
display: flex;
justify-content: space-between;
gap: 12px;
align-items: center;
padding: 12px 16px;
border-bottom: 1px solid var(--line);
background: #f2f5fa;
}
.variant-body { padding: 16px; }
pre {
overflow: auto;
padding: 12px;
border-radius: 6px;
background: #111827;
color: #f9fafb;
font-size: 13px;
}
code { font-family: "SFMono-Regular", Consolas, monospace; }
.review-box {
margin-top: 18px;
border: 1px solid var(--line);
border-radius: 8px;
padding: 16px;
background: #fff;
}
.controls { display: flex; flex-wrap: wrap; gap: 10px; margin: 12px 0; }
button, .button {
border: 1px solid var(--line);
border-radius: 6px;
background: #fff;
color: var(--ink);
min-height: 36px;
padding: 7px 12px;
cursor: pointer;
font-weight: 650;
}
button.primary, .button.primary { background: var(--accent); border-color: var(--accent); color: #fff; }
textarea {
width: 100%;
min-height: 96px;
resize: vertical;
border: 1px solid var(--line);
border-radius: 6px;
padding: 10px;
font: inherit;
}
.warn { color: var(--warn); font-weight: 650; }
.split { display: flex; flex-wrap: wrap; gap: 10px; }
.small { font-size: 13px; }
@media (max-width: 900px) {
.grid { grid-template-columns: 1fr; }
.case-row { grid-template-columns: 1fr; }
}
</style>
</head>
<body data-case-id="case-02-monthly-revenue-reconciliation">
<header>
<div class="split"><a class="button" href="index.html">返回入口</a><a class="button" href="case-01-support-triage.html">上一个</a><a class="button" href="case-03-webinar-repurposing.html">下一个</a></div>
<h1>月度收入对账 Skill</h1>
<p class="meta">A/B 盲测评审。记录完判断前,不要打开答案钥匙。</p>
</header>
<main>
<section class="panel">
<h2>场景</h2>
<p>一个财务运营团队每个月结账前都要比对 Stripe 导出、数据仓库发票 CSV 和人工调整表,找出金额、币种、发票和调整项的不一致。</p>
<h3>用户请求</h3>
<p>请创建一个用于月度收入对账的可复用 skill。输入是 Stripe balance export CSV、warehouse invoice CSV 和 adjustments sheet。输出需要标出不一致项、解释可能原因,并生成可用于月结的摘要。准确性比速度更重要。</p>
<h3>评审标准</h3>
<ol class="rubric"><li>是否识别出这是 file-backed 且准确性敏感的任务。</li>
<li>是否定义了确定性脚本和资源边界。</li>
<li>是否说明输入/输出 schema 与对账容差。</li>
<li>是否包含 fixture 和失败用例验证。</li>
<li>是否避免编造财务事实或隐藏未解决差异。</li></ol>
</section>
<div class="grid" style="margin-top:18px">
<section class="variant">
<div class="variant-head">
<h2>方案 A</h2>
<span class="badge">来源已隐藏</span>
</div>
<div class="variant-body">
<h2>Skill 包建议:revenue-reconciliation</h2>
<h3>边界</h3>
<p>负责围绕 Stripe balance export、warehouse invoice CSV 和调整表的重复月结对账。排除税务建议、收入确认政策决策、支付渠道配置和一次性表格美化。</p>
<h3>风险等级</h3>
<p>Governedfile-backed,准确性敏感。任何可用于月结的结论前,都必须有确定性解析和可见的未解决项目。</p>
<h3>包结构</h3>
<pre><code>revenue-reconciliation/
SKILL.md
agents/interface.yaml
scripts/
reconcile_revenue.py
validate_reconciliation_fixture.py
references/
input-schema.md
tolerance-policy.md
close-summary-contract.md
evals/
output/
cases.jsonl
fixtures/
stripe_sample.csv
warehouse_sample.csv
adjustments_sample.csv
reports/
output-risk-profile.md
output_quality_scorecard.md
trust_report.md</code></pre>
<h3>SKILL.md</h3>
<pre><code>---
name: revenue-reconciliation
description: 对来自 Stripe 导出、warehouse invoice CSV 和调整表的重复月结收入文件进行对账。用于 file-backed 差异检测、可能原因分析、未解决项目报告和月结摘要。不要用于收入确认建议、税务指导、支付渠道配置或一次性表格格式整理。
---
# 收入对账
## 工作流
1. 要求提供所有输入文件;缺失文件必须标记为 `missing evidence`。
2. 阅读 `references/input-schema.md`,先校验列再分析。
3. 运行 `scripts/reconcile_revenue.py`,规范化 ID、币种、金额精度、日期和调整项关联。
4. 审查 JSON 输出,并按缺失发票、金额差异、币种差异、重复项、时间差异或仅调整项分类。
5. 只基于脚本证据生成月结摘要。
6. 保持未解决差异可见。不要编造原因、审批或政策判断。
## 输出契约
- input_files
- validation_status
- totals_by_source
- matched_count
- mismatch_table
- likely_causes
- unresolved_items
- close_ready_summary
- missing_evidence</code></pre>
<h3>确定性脚本契约</h3>
<p>`scripts/reconcile_revenue.py` 应接受:</p>
<pre><code>python3 scripts/reconcile_revenue.py --stripe stripe.csv --warehouse warehouse.csv --adjustments adjustments.csv --output reconciliation.json</code></pre>
<p>它应返回包含源行 ID 的结构化 JSON,让摘要里的每个结论都能追溯到 file-backed fixture。</p>
<h3>评测</h3>
<ul>
<li>Fixture 1:所有记录匹配。</li>
<li>Fixture 2Stripe 有付款,但 warehouse 缺发票。</li>
<li>Fixture 3warehouse 金额超过容差。</li>
<li>Fixture 4:人工调整解释了差异。</li>
<li>近邻请求:“把这个表格弄好看一点”不应路由到这里。</li>
</ul>
<h3>门禁</h3>
<ul>
<li>汇总前必须通过输入 schema 校验。</li>
<li>如果遗漏未解决差异,输出评测必须失败。</li>
<li>Trust check 应标记网络访问为不必要。</li>
<li>Review Studio 应在晋级前显示 file-backed fixture 覆盖和未解决差异处理。</li>
</ul>
</div>
</section>
<section class="variant">
<div class="variant-head">
<h2>方案 B</h2>
<span class="badge">来源已隐藏</span>
</div>
<div class="variant-body">
<h2>建议 Skillrevenue-reconciliation</h2>
<h3>目的</h3>
<p>帮助 Codex 对 Stripe、数据仓库发票和人工调整表中的月度收入记录进行对账。</p>
<h3>建议包结构</h3>
<pre><code>revenue-reconciliation/
SKILL.md
agents/openai.yaml
scripts/
reconcile_revenue.py
references/
csv-schema.md</code></pre>
<h3>SKILL.md 草稿</h3>
<pre><code>---
name: revenue-reconciliation
description: 对 Stripe balance export、warehouse invoice CSV 和调整表中的月度收入数据进行对账。当用户要求比较收入文件、找出不一致项或准备月结摘要时使用。
---
# 收入对账
## 工作流
1. 确认用户提供了 Stripe 导出、warehouse invoice CSV 和调整表。
2. 阅读 `references/csv-schema.md`,了解预期列。
3. 使用用户提供的文件运行 `scripts/reconcile_revenue.py`。
4. 审查不一致项,并总结可能原因。
5. 不要编造缺失值。清楚标记未解决记录。
## 输出
- 已检查文件
- 匹配总额
- 不一致项
- 可能原因
- 未解决项目
- 月结摘要</code></pre>
<h3>脚本</h3>
<p>`scripts/reconcile_revenue.py` 应解析 CSV 输入,规范化 invoice ID 和币种,比较金额,并输出 JSON 供 Codex 总结。</p>
<h3>agents/openai.yaml</h3>
<pre><code>display_name: 收入对账
short_description: 比对收入 CSV,并总结月结差异。
default_prompt: 请对这些收入文件进行对账,并生成月结摘要。</code></pre>
<h3>验证</h3>
<p>使用包含匹配发票、缺失发票、重复发票和仅调整项记录的样例 CSV。确认未解决差异不会被隐藏。</p>
</div>
</section>
</div>
<section class="review-box">
<h2>你的判断</h2>
<p class="note">只根据评审标准和页面里可见的两个输出做判断。选择会保存到当前浏览器的本地存储里,也可以回到入口页导出。</p>
<div class="controls" role="radiogroup" aria-label="胜出方案">
<label><input type="radio" name="winner" value="A"> 方案 A 更好</label>
<label><input type="radio" name="winner" value="B"> 方案 B 更好</label>
<label><input type="radio" name="winner" value="tie"> 平局 / 没有明显胜出</label>
</div>
<label for="confidence">信心程度</label>
<div class="controls">
<select id="confidence">
<option value="">请选择</option>
<option value="0.4">0.4,较弱</option>
<option value="0.6">0.6,中等</option>
<option value="0.8">0.8,较强</option>
<option value="1.0">1.0,非常确定</option>
</select>
</div>
<label for="reason">理由</label>
<textarea id="reason" placeholder="为什么这个方案更好?请写出具体的评审标准差异。"></textarea>
<div class="controls">
<button class="primary" type="button" onclick="saveDecision()">保存判断</button>
<button type="button" onclick="clearDecision()">清空</button>
</div>
<p id="save-status" class="small note"></p>
</section>
</main>
<script>
const caseId = document.body.dataset.caseId;
const key = "blindSkillReview:" + caseId;
function currentDecision() {
const selected = document.querySelector('input[name="winner"]:checked');
return {
case_id: caseId,
winner_variant: selected ? selected.value : "",
confidence: document.getElementById("confidence").value,
reason: document.getElementById("reason").value.trim(),
reviewed_at: new Date().toISOString()
};
}
function saveDecision() {
const decision = currentDecision();
localStorage.setItem(key, JSON.stringify(decision));
document.getElementById("save-status").textContent = "已保存:" + decision.reviewed_at;
}
function clearDecision() {
localStorage.removeItem(key);
document.querySelectorAll('input[name="winner"]').forEach(el => el.checked = false);
document.getElementById("confidence").value = "";
document.getElementById("reason").value = "";
document.getElementById("save-status").textContent = "已清空。";
}
function loadDecision() {
const raw = localStorage.getItem(key);
if (!raw) return;
const decision = JSON.parse(raw);
const selected = document.querySelector('input[name="winner"][value="' + decision.winner_variant + '"]');
if (selected) selected.checked = true;
document.getElementById("confidence").value = decision.confidence || "";
document.getElementById("reason").value = decision.reason || "";
document.getElementById("save-status").textContent = "已加载保存过的判断。";
}
loadDecision();
</script>
</body>
</html>
@@ -1,356 +0,0 @@
<!doctype html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Webinar 内容复用 Skill - Skill 盲测评审</title>
<style>
:root {
color-scheme: light;
--bg: #f7f8fb;
--panel: #ffffff;
--ink: #20242c;
--muted: #687082;
--line: #d9deea;
--accent: #2563eb;
--accent-2: #0f766e;
--warn: #b45309;
}
* { box-sizing: border-box; }
body {
margin: 0;
font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
background: var(--bg);
color: var(--ink);
line-height: 1.55;
}
header {
padding: 28px clamp(18px, 4vw, 52px) 18px;
background: #ffffff;
border-bottom: 1px solid var(--line);
}
main { padding: 24px clamp(18px, 4vw, 52px) 52px; }
h1 { margin: 0 0 8px; font-size: clamp(26px, 3vw, 38px); letter-spacing: 0; }
h2 { margin: 0 0 12px; font-size: 20px; }
h3 { margin: 18px 0 8px; font-size: 16px; }
p { margin: 0 0 10px; }
a { color: var(--accent); text-decoration: none; }
a:hover { text-decoration: underline; }
.meta, .note { color: var(--muted); }
.grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; align-items: start; }
.card, .panel {
background: var(--panel);
border: 1px solid var(--line);
border-radius: 8px;
padding: 18px;
}
.case-list { display: grid; gap: 12px; margin-top: 18px; }
.case-row {
display: grid;
grid-template-columns: 1fr auto;
gap: 12px;
align-items: center;
background: var(--panel);
border: 1px solid var(--line);
border-radius: 8px;
padding: 14px 16px;
}
.badge {
display: inline-flex;
align-items: center;
min-height: 28px;
padding: 4px 10px;
border-radius: 999px;
background: #e8f0ff;
color: #1d4ed8;
font-size: 13px;
font-weight: 650;
}
.rubric { margin: 0; padding-left: 20px; }
.rubric li { margin-bottom: 6px; }
.variant {
background: var(--panel);
border: 1px solid var(--line);
border-radius: 8px;
overflow: hidden;
}
.variant-head {
display: flex;
justify-content: space-between;
gap: 12px;
align-items: center;
padding: 12px 16px;
border-bottom: 1px solid var(--line);
background: #f2f5fa;
}
.variant-body { padding: 16px; }
pre {
overflow: auto;
padding: 12px;
border-radius: 6px;
background: #111827;
color: #f9fafb;
font-size: 13px;
}
code { font-family: "SFMono-Regular", Consolas, monospace; }
.review-box {
margin-top: 18px;
border: 1px solid var(--line);
border-radius: 8px;
padding: 16px;
background: #fff;
}
.controls { display: flex; flex-wrap: wrap; gap: 10px; margin: 12px 0; }
button, .button {
border: 1px solid var(--line);
border-radius: 6px;
background: #fff;
color: var(--ink);
min-height: 36px;
padding: 7px 12px;
cursor: pointer;
font-weight: 650;
}
button.primary, .button.primary { background: var(--accent); border-color: var(--accent); color: #fff; }
textarea {
width: 100%;
min-height: 96px;
resize: vertical;
border: 1px solid var(--line);
border-radius: 6px;
padding: 10px;
font: inherit;
}
.warn { color: var(--warn); font-weight: 650; }
.split { display: flex; flex-wrap: wrap; gap: 10px; }
.small { font-size: 13px; }
@media (max-width: 900px) {
.grid { grid-template-columns: 1fr; }
.case-row { grid-template-columns: 1fr; }
}
</style>
</head>
<body data-case-id="case-03-webinar-repurposing">
<header>
<div class="split"><a class="button" href="index.html">返回入口</a><a class="button" href="case-02-monthly-revenue-reconciliation.html">上一个</a><a class="button" href="case-04-incident-postmortem.html">下一个</a></div>
<h1>Webinar 内容复用 Skill</h1>
<p class="meta">A/B 盲测评审。记录完判断前,不要打开答案钥匙。</p>
</header>
<main>
<section class="panel">
<h2>场景</h2>
<p>一个市场团队经常把 webinar 逐字稿改写成 LinkedIn 帖子、邮件 teaser 和 newsletter 段落,同时必须保证所有说法都有来源,并避开禁止宣传的 claim。</p>
<h3>用户请求</h3>
<p>请做一个可复用 skill,把 webinar 逐字稿复用成市场内容。输入包括逐字稿、讲者姓名、产品定位说明和禁止使用的 claim。输出包括 LinkedIn 帖子、邮件 teaser、newsletter 段落、可引用金句和来源依据说明。</p>
<h3>评审标准</h3>
<ol class="rubric"><li>是否保留来源约束,并处理 banned claims。</li>
<li>是否定义可重复的多渠道输出格式。</li>
<li>是否把语气和定位资料放到 references,避免入口膨胀。</li>
<li>是否有针对幻觉 claim 和泛泛市场文案的评测。</li>
<li>是否在中等治理风险下保持 skill 足够轻量。</li></ol>
</section>
<div class="grid" style="margin-top:18px">
<section class="variant">
<div class="variant-head">
<h2>方案 A</h2>
<span class="badge">来源已隐藏</span>
</div>
<div class="variant-body">
<h2>建议 Skillwebinar-repurposer</h2>
<h3>目的</h3>
<p>创建一个 skill,把 webinar 逐字稿转成可复用的市场内容。</p>
<h3>包结构</h3>
<pre><code>webinar-repurposer/
SKILL.md
agents/openai.yaml
references/
brand-voice.md
banned-claims.md</code></pre>
<h3>SKILL.md 草稿</h3>
<pre><code>---
name: webinar-repurposer
description: 将 webinar 逐字稿复用成 LinkedIn 帖子、邮件 teaser、newsletter 段落、可引用金句和来源依据说明。当用户提供逐字稿、讲者、定位说明或禁止 claim 时使用。
---
# Webinar 内容复用
## 工作流
1. 阅读逐字稿、讲者姓名、产品定位说明和禁止 claim。
2. 提取核心主题、最强的来源支持观点和可用引语。
3. 起草一条 LinkedIn 帖子、一段邮件 teaser、一段 newsletter 和若干金句。
4. 对照逐字稿和禁止 claim 检查每个说法。
5. 为重要 claim 添加来源依据说明。
## 输出
- LinkedIn 帖子
- 邮件 teaser
- Newsletter 段落
- 可引用金句
- 来源依据说明
- 已避免的 claim
## 参考资料
语气见 `references/brand-voice.md`,禁止 claim 见 `references/banned-claims.md`。</code></pre>
<h3>agents/openai.yaml</h3>
<pre><code>display_name: Webinar 内容复用
short_description: 将 webinar 逐字稿转成有来源依据的市场内容。
default_prompt: 请把这份 webinar 逐字稿复用成可发布的多渠道市场内容。</code></pre>
<h3>验证</h3>
<p>用包含强金句、证据较弱、以及容易误用禁止 claim 的逐字稿测试。确认输出会避免没有依据的 claim。</p>
</div>
</section>
<section class="variant">
<div class="variant-head">
<h2>方案 B</h2>
<span class="badge">来源已隐藏</span>
</div>
<div class="variant-body">
<h2>Skill 包建议:webinar-repurposer</h2>
<h3>边界</h3>
<p>负责在提供来源逐字稿和定位约束时,把逐字稿复用为市场内容。排除全新 campaign strategy、没有依据的产品 claim、法律审核和一次性文案润色。</p>
<h3>类型</h3>
<p>Production-light。它需要输出质量检查和 banned-claim 防护,但除非涉及受监管 claim 或上市公司披露规则,否则不需要做成很重的 governed 包。</p>
<h3>包结构</h3>
<pre><code>webinar-repurposer/
SKILL.md
agents/interface.yaml
references/
brand-voice.md
positioning-notes.md
banned-claims.md
evals/
output/
cases.jsonl
reports/
output-risk-profile.md
prompt-quality-profile.md</code></pre>
<h3>SKILL.md</h3>
<pre><code>---
name: webinar-repurposer
description: 将重复出现的 webinar 逐字稿复用为有来源依据的 LinkedIn 帖子、邮件 teaser、newsletter 段落、金句和 claim 依据说明。当提供逐字稿、讲者、定位说明或禁止 claim 时使用。不要用于无依据的发布 claim、法律审批、全新 campaign strategy 或一次性文案润色。
---
# Webinar 内容复用
## 工作流
1. 确认逐字稿是事实来源。
2. 提取有来源支持的主题、讲者背书的引语和可安全复用的 claim。
3. 起草前先检查 `references/banned-claims.md`。
4. 生成各渠道输出,但不要添加逐字稿中没有的性能数字、客户结果或产品承诺。
5. 添加来源依据说明,把每个主要 claim 绑定到逐字稿证据。
## 必填输出
- linkedin_post
- email_teaser
- newsletter_section
- pull_quotes
- source_grounding_notes
- claims_avoided
- missing_evidence</code></pre>
<h3>输出风险画像</h3>
<p>常见失败:</p>
<ul>
<li>生成任何产品都能用的泛泛市场话术。</li>
<li>编造指标或客户结果。</li>
<li>过度改写金句,导致意思偏离。</li>
<li>因为某个 claim 很有吸引力而忽略 banned claims。</li>
</ul>
<h3>输出评测用例</h3>
<p>1. 逐字稿包含诱人的“guaranteed ROI”禁止 claim:输出必须避开。</p>
<p>2. 逐字稿没有量化证明:输出不能编造数字。</p>
<p>3. 讲者原话不够顺:可以轻微修语法,但必须保留原意。</p>
<p>4. 近邻请求:“从零写一个新 campaign idea”不应路由到这里。</p>
<h3>审查门禁</h3>
<ul>
<li>必填 section 必须全部出现。</li>
<li>Banned claim 检查必须显式出现。</li>
<li>来源依据说明必须引用逐字稿位置或原话片段。</li>
<li>缺失证据必须被标出,而不是用通用卖点填补。</li>
</ul>
</div>
</section>
</div>
<section class="review-box">
<h2>你的判断</h2>
<p class="note">只根据评审标准和页面里可见的两个输出做判断。选择会保存到当前浏览器的本地存储里,也可以回到入口页导出。</p>
<div class="controls" role="radiogroup" aria-label="胜出方案">
<label><input type="radio" name="winner" value="A"> 方案 A 更好</label>
<label><input type="radio" name="winner" value="B"> 方案 B 更好</label>
<label><input type="radio" name="winner" value="tie"> 平局 / 没有明显胜出</label>
</div>
<label for="confidence">信心程度</label>
<div class="controls">
<select id="confidence">
<option value="">请选择</option>
<option value="0.4">0.4,较弱</option>
<option value="0.6">0.6,中等</option>
<option value="0.8">0.8,较强</option>
<option value="1.0">1.0,非常确定</option>
</select>
</div>
<label for="reason">理由</label>
<textarea id="reason" placeholder="为什么这个方案更好?请写出具体的评审标准差异。"></textarea>
<div class="controls">
<button class="primary" type="button" onclick="saveDecision()">保存判断</button>
<button type="button" onclick="clearDecision()">清空</button>
</div>
<p id="save-status" class="small note"></p>
</section>
</main>
<script>
const caseId = document.body.dataset.caseId;
const key = "blindSkillReview:" + caseId;
function currentDecision() {
const selected = document.querySelector('input[name="winner"]:checked');
return {
case_id: caseId,
winner_variant: selected ? selected.value : "",
confidence: document.getElementById("confidence").value,
reason: document.getElementById("reason").value.trim(),
reviewed_at: new Date().toISOString()
};
}
function saveDecision() {
const decision = currentDecision();
localStorage.setItem(key, JSON.stringify(decision));
document.getElementById("save-status").textContent = "已保存:" + decision.reviewed_at;
}
function clearDecision() {
localStorage.removeItem(key);
document.querySelectorAll('input[name="winner"]').forEach(el => el.checked = false);
document.getElementById("confidence").value = "";
document.getElementById("reason").value = "";
document.getElementById("save-status").textContent = "已清空。";
}
function loadDecision() {
const raw = localStorage.getItem(key);
if (!raw) return;
const decision = JSON.parse(raw);
const selected = document.querySelector('input[name="winner"][value="' + decision.winner_variant + '"]');
if (selected) selected.checked = true;
document.getElementById("confidence").value = decision.confidence || "";
document.getElementById("reason").value = decision.reason || "";
document.getElementById("save-status").textContent = "已加载保存过的判断。";
}
loadDecision();
</script>
</body>
</html>
@@ -1,361 +0,0 @@
<!doctype html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>故障复盘 Skill - Skill 盲测评审</title>
<style>
:root {
color-scheme: light;
--bg: #f7f8fb;
--panel: #ffffff;
--ink: #20242c;
--muted: #687082;
--line: #d9deea;
--accent: #2563eb;
--accent-2: #0f766e;
--warn: #b45309;
}
* { box-sizing: border-box; }
body {
margin: 0;
font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
background: var(--bg);
color: var(--ink);
line-height: 1.55;
}
header {
padding: 28px clamp(18px, 4vw, 52px) 18px;
background: #ffffff;
border-bottom: 1px solid var(--line);
}
main { padding: 24px clamp(18px, 4vw, 52px) 52px; }
h1 { margin: 0 0 8px; font-size: clamp(26px, 3vw, 38px); letter-spacing: 0; }
h2 { margin: 0 0 12px; font-size: 20px; }
h3 { margin: 18px 0 8px; font-size: 16px; }
p { margin: 0 0 10px; }
a { color: var(--accent); text-decoration: none; }
a:hover { text-decoration: underline; }
.meta, .note { color: var(--muted); }
.grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; align-items: start; }
.card, .panel {
background: var(--panel);
border: 1px solid var(--line);
border-radius: 8px;
padding: 18px;
}
.case-list { display: grid; gap: 12px; margin-top: 18px; }
.case-row {
display: grid;
grid-template-columns: 1fr auto;
gap: 12px;
align-items: center;
background: var(--panel);
border: 1px solid var(--line);
border-radius: 8px;
padding: 14px 16px;
}
.badge {
display: inline-flex;
align-items: center;
min-height: 28px;
padding: 4px 10px;
border-radius: 999px;
background: #e8f0ff;
color: #1d4ed8;
font-size: 13px;
font-weight: 650;
}
.rubric { margin: 0; padding-left: 20px; }
.rubric li { margin-bottom: 6px; }
.variant {
background: var(--panel);
border: 1px solid var(--line);
border-radius: 8px;
overflow: hidden;
}
.variant-head {
display: flex;
justify-content: space-between;
gap: 12px;
align-items: center;
padding: 12px 16px;
border-bottom: 1px solid var(--line);
background: #f2f5fa;
}
.variant-body { padding: 16px; }
pre {
overflow: auto;
padding: 12px;
border-radius: 6px;
background: #111827;
color: #f9fafb;
font-size: 13px;
}
code { font-family: "SFMono-Regular", Consolas, monospace; }
.review-box {
margin-top: 18px;
border: 1px solid var(--line);
border-radius: 8px;
padding: 16px;
background: #fff;
}
.controls { display: flex; flex-wrap: wrap; gap: 10px; margin: 12px 0; }
button, .button {
border: 1px solid var(--line);
border-radius: 6px;
background: #fff;
color: var(--ink);
min-height: 36px;
padding: 7px 12px;
cursor: pointer;
font-weight: 650;
}
button.primary, .button.primary { background: var(--accent); border-color: var(--accent); color: #fff; }
textarea {
width: 100%;
min-height: 96px;
resize: vertical;
border: 1px solid var(--line);
border-radius: 6px;
padding: 10px;
font: inherit;
}
.warn { color: var(--warn); font-weight: 650; }
.split { display: flex; flex-wrap: wrap; gap: 10px; }
.small { font-size: 13px; }
@media (max-width: 900px) {
.grid { grid-template-columns: 1fr; }
.case-row { grid-template-columns: 1fr; }
}
</style>
</head>
<body data-case-id="case-04-incident-postmortem">
<header>
<div class="split"><a class="button" href="index.html">返回入口</a><a class="button" href="case-03-webinar-repurposing.html">上一个</a><a class="button" href="case-05-pr-review-followup.html">下一个</a></div>
<h1>故障复盘 Skill</h1>
<p class="meta">A/B 盲测评审。记录完判断前,不要打开答案钥匙。</p>
</header>
<main>
<section class="panel">
<h2>场景</h2>
<p>一个基础设施团队经常把 Slack 故障时间线、告警数据和部署记录整理成故障复盘和后续行动项。</p>
<h3>用户请求</h3>
<p>请创建一个可复用的 governed skill,用于故障复盘。输入包括告警时间线、Slack 摘要、部署记录、客户影响说明和负责人列表。输出应包含时间线、影响、根因假设、行动项、未解决证据和后续负责人矩阵。</p>
<h3>评审标准</h3>
<ol class="rubric"><li>是否处理 governed/运营风险和未解决证据。</li>
<li>是否区分假设和已确认根因。</li>
<li>是否定义行动项负责人矩阵和回滚/跟进边界。</li>
<li>是否要求 file-backed 或 source-backed 证据。</li>
<li>是否有针对 blame language 和编造因果的审查门禁。</li></ol>
</section>
<div class="grid" style="margin-top:18px">
<section class="variant">
<div class="variant-head">
<h2>方案 A</h2>
<span class="badge">来源已隐藏</span>
</div>
<div class="variant-body">
<h2>Skill 包建议:incident-postmortem</h2>
<h3>边界</h3>
<p>负责根据 source-backed 时间线、Slack 摘要、部署记录、客户影响说明和负责人列表起草 governed 故障复盘。不要用于实时 incident command、最终 RCA 签核、HR/归责分析或面向客户的法律声明。</p>
<h3>类型</h3>
<p>Governed。这个包会影响运营责任归属,如果证据不足,容易制造虚假因果。</p>
<h3>包结构</h3>
<pre><code>incident-postmortem/
SKILL.md
agents/interface.yaml
references/
postmortem-contract.md
severity-policy.md
blame-free-language.md
action-owner-matrix.md
evals/
output/
cases.jsonl
fixtures/
alert_timeline.json
slack_summary.md
deploy_notes.md
reports/
output-risk-profile.md
output_quality_scorecard.md
trust_report.md
review-studio.html</code></pre>
<h3>SKILL.md</h3>
<pre><code>---
name: incident-postmortem
description: 根据告警时间线、Slack 摘要、部署记录、影响说明和负责人列表起草 governed 故障复盘。用于 source-backed 时间线重建、影响总结、根因假设、行动项、未解决证据和后续负责人矩阵。不要用于实时故障指挥、最终 RCA 审批、归责或法律/客户承诺。
---
# 故障复盘
## 工作流
1. 要求提供 source-backed 故障输入,并把缺失输入列为 `missing evidence`。
2. 只根据已提供时间戳建立时间线;如需推断顺序,必须明确标注。
3. 分开列出 `confirmed_facts`、`root_cause_hypotheses` 和 `unresolved_evidence`。
4. 总结客户影响,但不要编造受影响账户、持续时间或 SLA 违约。
5. 创建行动项:包含 owner、due date、验证信号和回滚/跟进边界。
6. 使用 `references/blame-free-language.md` 的无责语言。
7. 除非 reviewer 明确提供,否则最终 RCA 审批不属于本 skill。
## 输出契约
- incident_summary
- source_inputs
- timeline
- customer_impact
- confirmed_facts
- root_cause_hypotheses
- unresolved_evidence
- action_items
- owner_matrix
- approval_status</code></pre>
<h3>输出评测用例</h3>
<p>1. Slack 和部署记录冲突:必须保留为未解决证据。</p>
<p>2. 告警时间线缺恢复时间:不能编造持续时长。</p>
<p>3. 用户要求实时故障决策:应路由出去,或说明本 skill 只做复盘。</p>
<p>4. 来源材料带有归责语言:输出必须改写为系统/流程语言。</p>
<p>5. 缺负责人列表:行动项 owner 字段应为 `missing evidence`。</p>
<h3>门禁</h3>
<ul>
<li>时间线和部署记录需要 file-backed fixture 覆盖。</li>
<li>输出评测禁止编造因果和隐藏未解决证据。</li>
<li>Review Studio 在人工 reviewer 审批行动负责人矩阵前保持 warning。</li>
<li>Trust report 应显示无网络和无破坏性操作。</li>
</ul>
</div>
</section>
<section class="variant">
<div class="variant-head">
<h2>方案 B</h2>
<span class="badge">来源已隐藏</span>
</div>
<div class="variant-body">
<h2>建议 Skillincident-postmortem</h2>
<h3>目的</h3>
<p>帮助 Codex 根据时间线、Slack 摘要、部署记录、影响说明和负责人列表创建结构化故障复盘。</p>
<h3>包结构</h3>
<pre><code>incident-postmortem/
SKILL.md
agents/openai.yaml
references/
postmortem-template.md
severity-policy.md</code></pre>
<h3>SKILL.md 草稿</h3>
<pre><code>---
name: incident-postmortem
description: 根据告警时间线、Slack 摘要、部署记录、客户影响说明和负责人列表创建故障复盘。当用户需要时间线、影响、根因假设、行动项、未解决证据或负责人矩阵时使用。
---
# 故障复盘
## 工作流
1. 收集告警时间线、Slack 摘要、部署记录、客户影响说明和负责人列表。
2. 建立按时间排序的时间线。
3. 总结客户和系统影响。
4. 识别已确认事实和根因假设。
5. 在提供负责人和截止时间时,起草行动项。
6. 清楚标记未解决证据。
7. 避免归责式语言。
## 输出
- 故障摘要
- 时间线
- 影响
- 根因假设
- 已确认事实
- 未解决证据
- 行动项
- 负责人矩阵</code></pre>
<h3>agents/openai.yaml</h3>
<pre><code>display_name: 故障复盘
short_description: 根据故障证据生成结构化复盘。
default_prompt: 请把这些故障证据整理成复盘和负责人矩阵。</code></pre>
<h3>验证</h3>
<p>用证据完整、缺部署记录、Slack 说法冲突和暂时没有根因的 case 测试。确认 skill 会区分事实和假设。</p>
</div>
</section>
</div>
<section class="review-box">
<h2>你的判断</h2>
<p class="note">只根据评审标准和页面里可见的两个输出做判断。选择会保存到当前浏览器的本地存储里,也可以回到入口页导出。</p>
<div class="controls" role="radiogroup" aria-label="胜出方案">
<label><input type="radio" name="winner" value="A"> 方案 A 更好</label>
<label><input type="radio" name="winner" value="B"> 方案 B 更好</label>
<label><input type="radio" name="winner" value="tie"> 平局 / 没有明显胜出</label>
</div>
<label for="confidence">信心程度</label>
<div class="controls">
<select id="confidence">
<option value="">请选择</option>
<option value="0.4">0.4,较弱</option>
<option value="0.6">0.6,中等</option>
<option value="0.8">0.8,较强</option>
<option value="1.0">1.0,非常确定</option>
</select>
</div>
<label for="reason">理由</label>
<textarea id="reason" placeholder="为什么这个方案更好?请写出具体的评审标准差异。"></textarea>
<div class="controls">
<button class="primary" type="button" onclick="saveDecision()">保存判断</button>
<button type="button" onclick="clearDecision()">清空</button>
</div>
<p id="save-status" class="small note"></p>
</section>
</main>
<script>
const caseId = document.body.dataset.caseId;
const key = "blindSkillReview:" + caseId;
function currentDecision() {
const selected = document.querySelector('input[name="winner"]:checked');
return {
case_id: caseId,
winner_variant: selected ? selected.value : "",
confidence: document.getElementById("confidence").value,
reason: document.getElementById("reason").value.trim(),
reviewed_at: new Date().toISOString()
};
}
function saveDecision() {
const decision = currentDecision();
localStorage.setItem(key, JSON.stringify(decision));
document.getElementById("save-status").textContent = "已保存:" + decision.reviewed_at;
}
function clearDecision() {
localStorage.removeItem(key);
document.querySelectorAll('input[name="winner"]').forEach(el => el.checked = false);
document.getElementById("confidence").value = "";
document.getElementById("reason").value = "";
document.getElementById("save-status").textContent = "已清空。";
}
function loadDecision() {
const raw = localStorage.getItem(key);
if (!raw) return;
const decision = JSON.parse(raw);
const selected = document.querySelector('input[name="winner"][value="' + decision.winner_variant + '"]');
if (selected) selected.checked = true;
document.getElementById("confidence").value = decision.confidence || "";
document.getElementById("reason").value = decision.reason || "";
document.getElementById("save-status").textContent = "已加载保存过的判断。";
}
loadDecision();
</script>
</body>
</html>
@@ -1,344 +0,0 @@
<!doctype html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>PR Review 跟进 Skill - Skill 盲测评审</title>
<style>
:root {
color-scheme: light;
--bg: #f7f8fb;
--panel: #ffffff;
--ink: #20242c;
--muted: #687082;
--line: #d9deea;
--accent: #2563eb;
--accent-2: #0f766e;
--warn: #b45309;
}
* { box-sizing: border-box; }
body {
margin: 0;
font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
background: var(--bg);
color: var(--ink);
line-height: 1.55;
}
header {
padding: 28px clamp(18px, 4vw, 52px) 18px;
background: #ffffff;
border-bottom: 1px solid var(--line);
}
main { padding: 24px clamp(18px, 4vw, 52px) 52px; }
h1 { margin: 0 0 8px; font-size: clamp(26px, 3vw, 38px); letter-spacing: 0; }
h2 { margin: 0 0 12px; font-size: 20px; }
h3 { margin: 18px 0 8px; font-size: 16px; }
p { margin: 0 0 10px; }
a { color: var(--accent); text-decoration: none; }
a:hover { text-decoration: underline; }
.meta, .note { color: var(--muted); }
.grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; align-items: start; }
.card, .panel {
background: var(--panel);
border: 1px solid var(--line);
border-radius: 8px;
padding: 18px;
}
.case-list { display: grid; gap: 12px; margin-top: 18px; }
.case-row {
display: grid;
grid-template-columns: 1fr auto;
gap: 12px;
align-items: center;
background: var(--panel);
border: 1px solid var(--line);
border-radius: 8px;
padding: 14px 16px;
}
.badge {
display: inline-flex;
align-items: center;
min-height: 28px;
padding: 4px 10px;
border-radius: 999px;
background: #e8f0ff;
color: #1d4ed8;
font-size: 13px;
font-weight: 650;
}
.rubric { margin: 0; padding-left: 20px; }
.rubric li { margin-bottom: 6px; }
.variant {
background: var(--panel);
border: 1px solid var(--line);
border-radius: 8px;
overflow: hidden;
}
.variant-head {
display: flex;
justify-content: space-between;
gap: 12px;
align-items: center;
padding: 12px 16px;
border-bottom: 1px solid var(--line);
background: #f2f5fa;
}
.variant-body { padding: 16px; }
pre {
overflow: auto;
padding: 12px;
border-radius: 6px;
background: #111827;
color: #f9fafb;
font-size: 13px;
}
code { font-family: "SFMono-Regular", Consolas, monospace; }
.review-box {
margin-top: 18px;
border: 1px solid var(--line);
border-radius: 8px;
padding: 16px;
background: #fff;
}
.controls { display: flex; flex-wrap: wrap; gap: 10px; margin: 12px 0; }
button, .button {
border: 1px solid var(--line);
border-radius: 6px;
background: #fff;
color: var(--ink);
min-height: 36px;
padding: 7px 12px;
cursor: pointer;
font-weight: 650;
}
button.primary, .button.primary { background: var(--accent); border-color: var(--accent); color: #fff; }
textarea {
width: 100%;
min-height: 96px;
resize: vertical;
border: 1px solid var(--line);
border-radius: 6px;
padding: 10px;
font: inherit;
}
.warn { color: var(--warn); font-weight: 650; }
.split { display: flex; flex-wrap: wrap; gap: 10px; }
.small { font-size: 13px; }
@media (max-width: 900px) {
.grid { grid-template-columns: 1fr; }
.case-row { grid-template-columns: 1fr; }
}
</style>
</head>
<body data-case-id="case-05-pr-review-followup">
<header>
<div class="split"><a class="button" href="index.html">返回入口</a><a class="button" href="case-04-incident-postmortem.html">上一个</a></div>
<h1>PR Review 跟进 Skill</h1>
<p class="meta">A/B 盲测评审。记录完判断前,不要打开答案钥匙。</p>
</header>
<main>
<section class="panel">
<h2>场景</h2>
<p>一个小工程团队经常收到 GitHub PR review comments,希望 Codex 能把评论转成补丁、回复摘要和验证记录。</p>
<h3>用户请求</h3>
<p>请设计一个用于处理 PR review comments 的可复用 skill。输入包括 review comments、变更文件、失败 CI 说明和 maintainer preferences。输出需要分组评论、只修改相关文件、写回复说明并运行验证。必须避免回滚无关的用户改动。</p>
<h3>评审标准</h3>
<ol class="rubric"><li>是否理解 code-review 跟进和 dirty worktree 安全。</li>
<li>是否定义评论分组、补丁、回复和验证工作流。</li>
<li>是否避免过度重构和无关 revert。</li>
<li>是否说明变更后需要的命令和证据。</li>
<li>是否定义一般 code review 与评论跟进的触发排除。</li></ol>
</section>
<div class="grid" style="margin-top:18px">
<section class="variant">
<div class="variant-head">
<h2>方案 A</h2>
<span class="badge">来源已隐藏</span>
</div>
<div class="variant-body">
<h2>建议 Skillpr-review-followup</h2>
<h3>目的</h3>
<p>创建一个 skill,帮助 Codex 安全处理 PR review comments,并总结回复。</p>
<h3>包结构</h3>
<pre><code>pr-review-followup/
SKILL.md
agents/openai.yaml
references/
response-style.md</code></pre>
<h3>SKILL.md 草稿</h3>
<pre><code>---
name: pr-review-followup
description: 通过分组反馈、修改相关文件、编写回复说明和运行验证来处理 GitHub PR review comments。当用户提供 review comments、变更文件、CI 说明或 maintainer preferences 时使用。
---
# PR Review 跟进
## 工作流
1. 阅读所有 review comments,并按文件、主题和严重程度分组。
2. 编辑前检查受影响文件。
3. 只修改处理 comments 所需的文件。
4. 不要回滚无关用户改动。
5. 运行相关测试或 CI 复现命令。
6. 总结变更,并为 reviewer 起草回复说明。
## 输出
- 评论分组
- 修改文件
- 验证命令
- Reviewer 回复说明
- 剩余问题</code></pre>
<h3>agents/openai.yaml</h3>
<pre><code>display_name: PR Review 跟进
short_description: 处理 PR comments 并准备 reviewer 回复。
default_prompt: 请处理这些 PR review comments,并总结验证结果。</code></pre>
<h3>验证</h3>
<p>用需要代码修改、文档修改、无需修改只需解释、以及 reviewer 要求冲突的 comments 测试。</p>
</div>
</section>
<section class="variant">
<div class="variant-head">
<h2>方案 B</h2>
<span class="badge">来源已隐藏</span>
</div>
<div class="variant-body">
<h2>Skill 包建议:pr-review-followup</h2>
<h3>边界</h3>
<p>负责 PR 已经有明确 reviewer comments、变更文件或 CI 说明之后的评论跟进。排除首次 code review、大范围重构、issue triage,以及没有绑定评论的推测性清理。</p>
<h3>包结构</h3>
<pre><code>pr-review-followup/
SKILL.md
agents/interface.yaml
references/
response-style.md
dirty-worktree-safety.md
verification-policy.md
evals/
trigger_cases.json
output/
cases.jsonl
reports/
output-risk-profile.md
output_quality_scorecard.md</code></pre>
<h3>SKILL.md</h3>
<pre><code>---
name: pr-review-followup
description: 处理具体 PR review comments:分组反馈、只修改相关文件、保留无关用户改动、起草 reviewer 回复并运行验证。当提供 review comments、变更文件、失败 CI 说明或 maintainer preferences 时使用。不要用于首次 code review、大范围重构、issue triage 或无关清理。
---
# PR Review 跟进
## 工作流
1. 编辑前记录 git status,并识别用户已经改动的文件。
2. 按文件、行为、严重程度,以及是否需要代码、测试、文档或仅解释来分组 review comments。
3. 修改前阅读受影响代码和附近测试。
4. 只修改与评论绑定的文件。不要回滚无关改动,也不要格式化未触碰文件。
5. 运行有针对性的验证,并记录命令和结果。
6. 起草 reviewer 回复说明,把每组评论映射到变更、无需修改的理由或剩余问题。
7. 如果评论冲突,停止并询问哪个 reviewer 指令优先。
## 输出契约
- comment_groups
- patch_summary
- files_changed
- verification
- reviewer_response_notes
- unresolved_questions
- unrelated_changes_preserved</code></pre>
<h3>输出评测用例</h3>
<p>1. 评论要求添加特定 null check:输出必须只修改受影响函数,并提到测试。</p>
<p>2. Reviewer 要求与 PR 范围无关的大重构:输出应标出范围风险。</p>
<p>3. Dirty worktree 中有无关用户文件:输出必须保留它。</p>
<p>4. 两个 reviewer comments 冲突:输出必须询问优先级,而不是猜。</p>
<p>5. 近邻请求:“从零 review 这个 PR”不应触发 follow-up mode。</p>
<h3>门禁</h3>
<ul>
<li>触发评测必须区分首次 review 和评论跟进。</li>
<li>如果回滚或隐藏无关改动,输出评测必须失败。</li>
<li>验证策略必须记录跳过测试的原因。</li>
<li>回复说明必须能追溯到评论分组。</li>
</ul>
</div>
</section>
</div>
<section class="review-box">
<h2>你的判断</h2>
<p class="note">只根据评审标准和页面里可见的两个输出做判断。选择会保存到当前浏览器的本地存储里,也可以回到入口页导出。</p>
<div class="controls" role="radiogroup" aria-label="胜出方案">
<label><input type="radio" name="winner" value="A"> 方案 A 更好</label>
<label><input type="radio" name="winner" value="B"> 方案 B 更好</label>
<label><input type="radio" name="winner" value="tie"> 平局 / 没有明显胜出</label>
</div>
<label for="confidence">信心程度</label>
<div class="controls">
<select id="confidence">
<option value="">请选择</option>
<option value="0.4">0.4,较弱</option>
<option value="0.6">0.6,中等</option>
<option value="0.8">0.8,较强</option>
<option value="1.0">1.0,非常确定</option>
</select>
</div>
<label for="reason">理由</label>
<textarea id="reason" placeholder="为什么这个方案更好?请写出具体的评审标准差异。"></textarea>
<div class="controls">
<button class="primary" type="button" onclick="saveDecision()">保存判断</button>
<button type="button" onclick="clearDecision()">清空</button>
</div>
<p id="save-status" class="small note"></p>
</section>
</main>
<script>
const caseId = document.body.dataset.caseId;
const key = "blindSkillReview:" + caseId;
function currentDecision() {
const selected = document.querySelector('input[name="winner"]:checked');
return {
case_id: caseId,
winner_variant: selected ? selected.value : "",
confidence: document.getElementById("confidence").value,
reason: document.getElementById("reason").value.trim(),
reviewed_at: new Date().toISOString()
};
}
function saveDecision() {
const decision = currentDecision();
localStorage.setItem(key, JSON.stringify(decision));
document.getElementById("save-status").textContent = "已保存:" + decision.reviewed_at;
}
function clearDecision() {
localStorage.removeItem(key);
document.querySelectorAll('input[name="winner"]').forEach(el => el.checked = false);
document.getElementById("confidence").value = "";
document.getElementById("reason").value = "";
document.getElementById("save-status").textContent = "已清空。";
}
function loadDecision() {
const raw = localStorage.getItem(key);
if (!raw) return;
const decision = JSON.parse(raw);
const selected = document.querySelector('input[name="winner"][value="' + decision.winner_variant + '"]');
if (selected) selected.checked = true;
document.getElementById("confidence").value = decision.confidence || "";
document.getElementById("reason").value = decision.reason || "";
document.getElementById("save-status").textContent = "已加载保存过的判断。";
}
loadDecision();
</script>
</body>
</html>
File diff suppressed because it is too large Load Diff
@@ -1,220 +0,0 @@
<!doctype html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>人工盲测评审包 - Meta Skill 对比</title>
<style>
:root {
color-scheme: light;
--bg: #f7f8fb;
--panel: #ffffff;
--ink: #20242c;
--muted: #687082;
--line: #d9deea;
--accent: #2563eb;
--accent-2: #0f766e;
--warn: #b45309;
}
* { box-sizing: border-box; }
body {
margin: 0;
font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
background: var(--bg);
color: var(--ink);
line-height: 1.55;
}
header {
padding: 28px clamp(18px, 4vw, 52px) 18px;
background: #ffffff;
border-bottom: 1px solid var(--line);
}
main { padding: 24px clamp(18px, 4vw, 52px) 52px; }
h1 { margin: 0 0 8px; font-size: clamp(26px, 3vw, 38px); letter-spacing: 0; }
h2 { margin: 0 0 12px; font-size: 20px; }
h3 { margin: 18px 0 8px; font-size: 16px; }
p { margin: 0 0 10px; }
a { color: var(--accent); text-decoration: none; }
a:hover { text-decoration: underline; }
.meta, .note { color: var(--muted); }
.grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; align-items: start; }
.card, .panel {
background: var(--panel);
border: 1px solid var(--line);
border-radius: 8px;
padding: 18px;
}
.case-list { display: grid; gap: 12px; margin-top: 18px; }
.case-row {
display: grid;
grid-template-columns: 1fr auto;
gap: 12px;
align-items: center;
background: var(--panel);
border: 1px solid var(--line);
border-radius: 8px;
padding: 14px 16px;
}
.badge {
display: inline-flex;
align-items: center;
min-height: 28px;
padding: 4px 10px;
border-radius: 999px;
background: #e8f0ff;
color: #1d4ed8;
font-size: 13px;
font-weight: 650;
}
.rubric { margin: 0; padding-left: 20px; }
.rubric li { margin-bottom: 6px; }
.variant {
background: var(--panel);
border: 1px solid var(--line);
border-radius: 8px;
overflow: hidden;
}
.variant-head {
display: flex;
justify-content: space-between;
gap: 12px;
align-items: center;
padding: 12px 16px;
border-bottom: 1px solid var(--line);
background: #f2f5fa;
}
.variant-body { padding: 16px; }
pre {
overflow: auto;
padding: 12px;
border-radius: 6px;
background: #111827;
color: #f9fafb;
font-size: 13px;
}
code { font-family: "SFMono-Regular", Consolas, monospace; }
.review-box {
margin-top: 18px;
border: 1px solid var(--line);
border-radius: 8px;
padding: 16px;
background: #fff;
}
.controls { display: flex; flex-wrap: wrap; gap: 10px; margin: 12px 0; }
button, .button {
border: 1px solid var(--line);
border-radius: 6px;
background: #fff;
color: var(--ink);
min-height: 36px;
padding: 7px 12px;
cursor: pointer;
font-weight: 650;
}
button.primary, .button.primary { background: var(--accent); border-color: var(--accent); color: #fff; }
textarea {
width: 100%;
min-height: 96px;
resize: vertical;
border: 1px solid var(--line);
border-radius: 6px;
padding: 10px;
font: inherit;
}
.warn { color: var(--warn); font-weight: 650; }
.split { display: flex; flex-wrap: wrap; gap: 10px; }
.small { font-size: 13px; }
@media (max-width: 900px) {
.grid { grid-template-columns: 1fr; }
.case-row { grid-template-columns: 1fr; }
}
</style>
</head>
<body>
<header>
<h1>人工盲测评审包</h1>
<p class="meta">5 个真实常见的 skill 创建场景。打开答案钥匙前,方案来源都会保持隐藏。</p>
</header>
<main>
<section class="panel">
<h2>评审说明</h2>
<p>依次打开每个案例,按评审标准比较方案 A 和方案 B,保存胜出方案和理由,然后回到这里导出判断结果。5 个判断全部保存前,不要打开 <code>DO_NOT_OPEN_answer_key.html</code><code>DO_NOT_OPEN_answer_key.json</code></p>
<p class="warn">证据边界:这些输出是 Codex 在本地套用两份 skill 说明生成的,适合做人类盲测评审,但不能冒充 provider-backed 的独立模型执行证据。</p>
<div class="controls">
<button class="primary" type="button" onclick="exportDecisions()">导出已保存判断</button>
<a class="button" href="review-decisions-template.json">判断模板</a>
<a class="button" href="blind-pack.json">盲测包 JSON</a>
</div>
<textarea id="export" placeholder="导出的判断结果会显示在这里。"></textarea>
</section>
<section class="case-list">
<div class="case-row">
<div>
<div class="badge">案例 1</div>
<h2 style="margin-top:10px">客服工单分诊 Skill</h2>
<p class="meta">一个 B2B SaaS 团队每天都要处理客户工单:判断分类、紧急程度、起草首轮回复,并把账务、安全、故障类问题升级给对应负责人。他们希望把这个重复流程做成一个给支持团队使用的 Codex skill。</p>
</div>
<a class="button primary" href="case-01-support-triage.html">打开报告</a>
</div>
<div class="case-row">
<div>
<div class="badge">案例 2</div>
<h2 style="margin-top:10px">月度收入对账 Skill</h2>
<p class="meta">一个财务运营团队每个月结账前都要比对 Stripe 导出、数据仓库发票 CSV 和人工调整表,找出金额、币种、发票和调整项的不一致。</p>
</div>
<a class="button primary" href="case-02-monthly-revenue-reconciliation.html">打开报告</a>
</div>
<div class="case-row">
<div>
<div class="badge">案例 3</div>
<h2 style="margin-top:10px">Webinar 内容复用 Skill</h2>
<p class="meta">一个市场团队经常把 webinar 逐字稿改写成 LinkedIn 帖子、邮件 teaser 和 newsletter 段落,同时必须保证所有说法都有来源,并避开禁止宣传的 claim。</p>
</div>
<a class="button primary" href="case-03-webinar-repurposing.html">打开报告</a>
</div>
<div class="case-row">
<div>
<div class="badge">案例 4</div>
<h2 style="margin-top:10px">故障复盘 Skill</h2>
<p class="meta">一个基础设施团队经常把 Slack 故障时间线、告警数据和部署记录整理成故障复盘和后续行动项。</p>
</div>
<a class="button primary" href="case-04-incident-postmortem.html">打开报告</a>
</div>
<div class="case-row">
<div>
<div class="badge">案例 5</div>
<h2 style="margin-top:10px">PR Review 跟进 Skill</h2>
<p class="meta">一个小工程团队经常收到 GitHub PR review comments,希望 Codex 能把评论转成补丁、回复摘要和验证记录。</p>
</div>
<a class="button primary" href="case-05-pr-review-followup.html">打开报告</a>
</div>
</section>
</main>
<script>
const caseIds = ["case-01-support-triage", "case-02-monthly-revenue-reconciliation", "case-03-webinar-repurposing", "case-04-incident-postmortem", "case-05-pr-review-followup"];
function exportDecisions() {
const decisions = caseIds.map(id => {
const raw = localStorage.getItem("blindSkillReview:" + id);
return raw ? JSON.parse(raw) : { case_id: id, winner_variant: "", confidence: "", reason: "", reviewed_at: "" };
});
const payload = {
schema_version: "1.0",
review_pack: "blind-human-review-2026-06-29",
reviewer: "",
blind_review_attestation: {
answer_key_not_opened_before_decisions: false,
completed_before_answer_key: false
},
decisions
};
document.getElementById("export").value = JSON.stringify(payload, null, 2);
}
</script>
</body>
</html>
@@ -1,42 +0,0 @@
{
"schema_version": "1.0",
"review_pack": "blind-human-review-2026-06-29",
"reviewer": "",
"reviewed_at": "",
"blind_review_attestation": {
"answer_key_not_opened_before_decisions": false,
"completed_before_answer_key": false
},
"decisions": [
{
"case_id": "case-01-support-triage",
"winner_variant": "",
"confidence": "",
"reason": ""
},
{
"case_id": "case-02-monthly-revenue-reconciliation",
"winner_variant": "",
"confidence": "",
"reason": ""
},
{
"case_id": "case-03-webinar-repurposing",
"winner_variant": "",
"confidence": "",
"reason": ""
},
{
"case_id": "case-04-incident-postmortem",
"winner_variant": "",
"confidence": "",
"reason": ""
},
{
"case_id": "case-05-pr-review-followup",
"winner_variant": "",
"confidence": "",
"reason": ""
}
]
}
@@ -1,55 +0,0 @@
{
"schema_version": "1.0",
"review_pack": "blind-human-review-2026-06-29",
"reviewer": "single human reviewer",
"reviewed_at": "2026-06-29T03:01:03.037Z",
"recorded_at": "2026-06-29T03:04:34Z",
"blind_review_attestation": {
"answer_key_not_opened_before_decisions": true,
"completed_before_answer_key": true,
"attestation_source": "User confirmed in chat after decisions were submitted: 确认:我是在完成五个判断之后才让你打开答案钥匙的,评审前没有看来源。以上 5 个判断都是揭晓来源前完成的。"
},
"limitations": {
"reviewer_count": 1,
"reasons_present": false,
"reason_gap": "The reviewer selected winners with confidence 1.0, but per-case rationale fields were left empty.",
"execution_boundary": "Outputs were generated locally from two skill instruction files. This is human blind A/B review evidence, not provider-backed independent model execution evidence."
},
"decisions": [
{
"case_id": "case-01-support-triage",
"winner_variant": "B",
"confidence": "1.0",
"reason": "",
"reviewed_at": "2026-06-29T03:00:00.994Z"
},
{
"case_id": "case-02-monthly-revenue-reconciliation",
"winner_variant": "A",
"confidence": "1.0",
"reason": "",
"reviewed_at": "2026-06-29T03:00:18.277Z"
},
{
"case_id": "case-03-webinar-repurposing",
"winner_variant": "B",
"confidence": "1.0",
"reason": "",
"reviewed_at": "2026-06-29T03:00:34.343Z"
},
{
"case_id": "case-04-incident-postmortem",
"winner_variant": "A",
"confidence": "1.0",
"reason": "",
"reviewed_at": "2026-06-29T03:00:49.160Z"
},
{
"case_id": "case-05-pr-review-followup",
"winner_variant": "B",
"confidence": "1.0",
"reason": "",
"reviewed_at": "2026-06-29T03:01:03.037Z"
}
]
}
+32 -32
View File
@@ -3,9 +3,9 @@
{
"name": "yao-meta-skill",
"winner_label": "Current",
"winner_description": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.",
"winner_tokens": 54,
"current_tokens": 54,
"winner_description": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.",
"winner_tokens": 53,
"current_tokens": 53,
"winner_holdout_fp": 0,
"winner_holdout_fn": 0,
"current_holdout_fp": 0,
@@ -36,44 +36,44 @@
"calibration": {
"holdout": {
"threshold": 0.33,
"mean_positive_score": 0.704,
"mean_non_trigger_score": 0.0,
"mean_near_neighbor_score": 0.0,
"min_positive_score": 0.465,
"max_non_trigger_score": 0.0,
"score_gap": 0.465,
"threshold_margin": 0.135,
"positive_threshold_buffer": 0.135,
"negative_threshold_buffer": 0.33,
"mean_positive_score": 0.908,
"mean_non_trigger_score": 0.003,
"mean_near_neighbor_score": 0.006,
"min_positive_score": 0.767,
"max_non_trigger_score": 0.023,
"score_gap": 0.744,
"threshold_margin": 0.307,
"positive_threshold_buffer": 0.437,
"negative_threshold_buffer": 0.307,
"boundary_case_count": 0,
"boundary_case_rate": 0.0,
"risk_band": "healthy"
},
"blind_holdout": {
"threshold": 0.33,
"mean_positive_score": 0.377,
"mean_non_trigger_score": 0.024,
"mean_near_neighbor_score": 0.006,
"min_positive_score": 0.374,
"max_non_trigger_score": 0.084,
"score_gap": 0.29,
"threshold_margin": 0.044,
"positive_threshold_buffer": 0.044,
"negative_threshold_buffer": 0.246,
"boundary_case_count": 2,
"boundary_case_rate": 0.333,
"risk_band": "watch"
"mean_positive_score": 0.669,
"mean_non_trigger_score": 0.116,
"mean_near_neighbor_score": 0.152,
"min_positive_score": 0.665,
"max_non_trigger_score": 0.305,
"score_gap": 0.36,
"threshold_margin": 0.025,
"positive_threshold_buffer": 0.335,
"negative_threshold_buffer": 0.025,
"boundary_case_count": 1,
"boundary_case_rate": 0.167,
"risk_band": "tight"
},
"adversarial_holdout": {
"threshold": 0.33,
"mean_positive_score": 0.81,
"mean_positive_score": 1.0,
"mean_non_trigger_score": 0.0,
"mean_near_neighbor_score": 0.0,
"min_positive_score": 0.808,
"min_positive_score": 1.0,
"max_non_trigger_score": 0.0,
"score_gap": 0.808,
"score_gap": 1.0,
"threshold_margin": 0.33,
"positive_threshold_buffer": 0.478,
"positive_threshold_buffer": 0.67,
"negative_threshold_buffer": 0.33,
"boundary_case_count": 0,
"boundary_case_rate": 0.0,
@@ -164,7 +164,7 @@
"route_metrics": {
"precision": 1.0,
"recall": 1.0,
"average_margin": 0.644,
"average_margin": 0.701,
"misroute_count": 0,
"ambiguous_case_count": 0
}
@@ -187,8 +187,8 @@
"label": "Current",
"ranking_state": "selected_by_dev",
"promotion_state": "kept_current",
"description": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.",
"tokens": 54,
"description": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.",
"tokens": 53,
"dev_errors": 0,
"holdout_errors": 0,
"reason_tags": []
@@ -696,7 +696,7 @@
"route_metrics": {
"precision": 1.0,
"recall": 1.0,
"average_margin": 0.709,
"average_margin": 0.586,
"misroute_count": 0,
"ambiguous_case_count": 0
}
+1 -1
View File
@@ -3,7 +3,7 @@
| Target | Role | Label | Ranking State | Promotion State | Tokens | Dev Errors | Holdout Errors | Reason Tags |
| --- | --- | --- | --- | --- | ---: | ---: | ---: | --- |
| `yao-meta-skill` | baseline | `Baseline` | reference | reference | 8 | 1 | 0 | - |
| `yao-meta-skill` | current | `Current` | selected_by_dev | kept_current | 54 | 0 | 0 | - |
| `yao-meta-skill` | current | `Current` | selected_by_dev | kept_current | 53 | 0 | 0 | - |
| `yao-meta-skill` | candidate | `Minimal` | not_selected | blocked | 41 | 2 | 0 | weaker_dev_fit |
| `yao-meta-skill` | candidate | `Guardrail` | not_selected | blocked | 56 | 2 | 0 | weaker_dev_fit, longer_without_gain |
| `yao-meta-skill` | candidate | `Balanced` | not_selected | blocked | 60 | 2 | 0 | weaker_dev_fit, longer_without_gain |
File diff suppressed because it is too large Load Diff
+14 -14
View File
@@ -5,17 +5,17 @@
"stats": {
"context_budget_tier": "production",
"context_budget_limit": 1000,
"skill_body_tokens": 794,
"other_text_tokens": 1200569,
"estimated_initial_load_tokens": 987,
"estimated_total_text_tokens": 1201363,
"deferred_resource_tokens": 531767,
"skill_body_tokens": 805,
"other_text_tokens": 1156781,
"estimated_initial_load_tokens": 998,
"estimated_total_text_tokens": 1157586,
"deferred_resource_tokens": 525864,
"deferred_resource_warn_threshold": 120000,
"deferred_resource_dirs": [
{
"path": "scripts",
"estimated_tokens": 469568,
"file_count": 155
"estimated_tokens": 464561,
"file_count": 153
},
{
"path": "references",
@@ -24,7 +24,7 @@
},
{
"path": "evals",
"estimated_tokens": 22731,
"estimated_tokens": 21835,
"file_count": 27
},
{
@@ -36,8 +36,8 @@
"large_deferred_resource_dirs": [
{
"path": "scripts",
"estimated_tokens": 469568,
"file_count": 155
"estimated_tokens": 464561,
"file_count": 153
}
],
"deferred_resource_governance": {
@@ -59,16 +59,16 @@
],
"missing": [],
"path": "scripts",
"estimated_tokens": 469568,
"file_count": 155,
"estimated_tokens": 464561,
"file_count": 153,
"rationale": "Script resources are deterministic deferred tools, not initial-load prompt context."
}
],
"summary": "Large deferred resources are indexed and backed by evidence."
},
"relevant_file_count": 591,
"relevant_file_count": 712,
"unused_resource_dirs": [],
"quality_signal_points": 140,
"quality_density": 141.8
"quality_density": 140.3
}
}
+1 -1
View File
@@ -2,7 +2,7 @@
| Target | Path | Tier | Limit | Initial | SKILL | Deferred | Resource Governance | Large Deferred Dirs | Quality Density | Unused Dirs | Status |
| --- | --- | --- | ---: | ---: | ---: | ---: | --- | --- | ---: | --- | --- |
| root | `.` | `production` | 1000 | 987 | 794 | 531767 | `governed` | scripts:469568 | 141.8 | - | ok |
| root | `.` | `production` | 1000 | 998 | 805 | 525864 | `governed` | scripts:464561 | 140.3 | - | ok |
| complex-release-orchestrator | `examples/complex-release-orchestrator/generated-skill` | `production` | 1000 | 790 | 718 | 1657 | `not-required` | - | 164.6 | - | ok |
| governed-incident-command | `examples/governed-incident-command/generated-skill` | `production` | 1000 | 760 | 658 | 1030 | `not-required` | - | 171.1 | - | ok |
+8 -8
View File
@@ -6,14 +6,14 @@
"path": ".",
"budget_tier": "production",
"budget_limit": 1000,
"initial_tokens": 987,
"skill_body_tokens": 794,
"deferred_resource_tokens": 531767,
"initial_tokens": 998,
"skill_body_tokens": 805,
"deferred_resource_tokens": 525864,
"large_deferred_resource_dirs": [
{
"path": "scripts",
"estimated_tokens": 469568,
"file_count": 155
"estimated_tokens": 464561,
"file_count": 153
}
],
"deferred_resource_governance": {
@@ -35,14 +35,14 @@
],
"missing": [],
"path": "scripts",
"estimated_tokens": 469568,
"file_count": 155,
"estimated_tokens": 464561,
"file_count": 153,
"rationale": "Script resources are deterministic deferred tools, not initial-load prompt context."
}
],
"summary": "Large deferred resources are indexed and backed by evidence."
},
"quality_density": 141.8,
"quality_density": 140.3,
"unused_resource_dirs": [],
"ok": true,
"warnings": []
File diff suppressed because it is too large Load Diff
+7 -7
View File
@@ -2,19 +2,19 @@
Winner: `Current`
- current tokens: `54`
- winner tokens: `54`
- current tokens: `53`
- winner tokens: `53`
- baseline tokens: `8`
## Winner
Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.
Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.
## Candidate Ranking
| Candidate | Tokens | Dev FP | Dev FN | Dev Near | Holdout FP | Holdout FN |
| --- | ---: | ---: | ---: | ---: | ---: | ---: |
| `Current` | 54 | 0 | 0 | 1.0 | 0 | 0 |
| `Current` | 53 | 0 | 0 | 1.0 | 0 | 0 |
| `Minimal` | 41 | 1 | 1 | 1.0 | 0 | 0 |
| `Guardrail` | 56 | 1 | 1 | 1.0 | 0 | 0 |
| `Balanced` | 60 | 1 | 1 | 1.0 | 0 | 0 |
@@ -34,9 +34,9 @@ Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use
| Gate | Winner Gap | Winner Risk | Winner Boundary Rate | Current Gap | Baseline Gap |
| --- | ---: | --- | ---: | ---: | ---: |
| Holdout | 0.465 | healthy | 0.0 | 0.465 | 0.416 |
| Blind Holdout | 0.29 | watch | 0.333 | 0.29 | 0.368 |
| Adversarial Holdout | 0.808 | healthy | 0.0 | 0.808 | 0.845 |
| Holdout | 0.744 | healthy | 0.0 | 0.744 | 0.416 |
| Blind Holdout | 0.36 | tight | 0.167 | 0.36 | 0.368 |
| Adversarial Holdout | 1.0 | healthy | 0.0 | 1.0 | 0.845 |
## Judge Blind Summary
+28 -28
View File
@@ -3,9 +3,9 @@
{
"name": "yao-meta-skill",
"winner_label": "Current",
"winner_description": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.",
"winner_tokens": 54,
"current_tokens": 54,
"winner_description": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.",
"winner_tokens": 53,
"current_tokens": 53,
"winner_holdout_fp": 0,
"winner_holdout_fn": 0,
"current_holdout_fp": 0,
@@ -36,44 +36,44 @@
"calibration": {
"holdout": {
"threshold": 0.33,
"mean_positive_score": 0.704,
"mean_non_trigger_score": 0.0,
"mean_near_neighbor_score": 0.0,
"min_positive_score": 0.465,
"max_non_trigger_score": 0.0,
"score_gap": 0.465,
"threshold_margin": 0.135,
"positive_threshold_buffer": 0.135,
"negative_threshold_buffer": 0.33,
"mean_positive_score": 0.908,
"mean_non_trigger_score": 0.003,
"mean_near_neighbor_score": 0.006,
"min_positive_score": 0.767,
"max_non_trigger_score": 0.023,
"score_gap": 0.744,
"threshold_margin": 0.307,
"positive_threshold_buffer": 0.437,
"negative_threshold_buffer": 0.307,
"boundary_case_count": 0,
"boundary_case_rate": 0.0,
"risk_band": "healthy"
},
"blind_holdout": {
"threshold": 0.33,
"mean_positive_score": 0.377,
"mean_non_trigger_score": 0.024,
"mean_near_neighbor_score": 0.006,
"min_positive_score": 0.374,
"max_non_trigger_score": 0.084,
"score_gap": 0.29,
"threshold_margin": 0.044,
"positive_threshold_buffer": 0.044,
"negative_threshold_buffer": 0.246,
"boundary_case_count": 2,
"boundary_case_rate": 0.333,
"risk_band": "watch"
"mean_positive_score": 0.669,
"mean_non_trigger_score": 0.116,
"mean_near_neighbor_score": 0.152,
"min_positive_score": 0.665,
"max_non_trigger_score": 0.305,
"score_gap": 0.36,
"threshold_margin": 0.025,
"positive_threshold_buffer": 0.335,
"negative_threshold_buffer": 0.025,
"boundary_case_count": 1,
"boundary_case_rate": 0.167,
"risk_band": "tight"
},
"adversarial_holdout": {
"threshold": 0.33,
"mean_positive_score": 0.81,
"mean_positive_score": 1.0,
"mean_non_trigger_score": 0.0,
"mean_near_neighbor_score": 0.0,
"min_positive_score": 0.808,
"min_positive_score": 1.0,
"max_non_trigger_score": 0.0,
"score_gap": 0.808,
"score_gap": 1.0,
"threshold_margin": 0.33,
"positive_threshold_buffer": 0.478,
"positive_threshold_buffer": 0.67,
"negative_threshold_buffer": 0.33,
"boundary_case_count": 0,
"boundary_case_rate": 0.0,
+1 -1
View File
@@ -2,7 +2,7 @@
| Target | Winner | Winner Tokens | Holdout FP | Holdout FN | Blind FP | Blind FN | Judge Blind Errors | Adv FP | Adv FN | Adv Gap | Adv Risk | Status |
| --- | --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | ---: | --- | --- |
| `yao-meta-skill` | `Current` | 54 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.808 | healthy | ok |
| `yao-meta-skill` | `Current` | 53 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1.0 | healthy | ok |
| `team-frontend-review` | `Current` | 50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.509 | healthy | ok |
| `governed-incident-command` | `Current` | 37 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0.538 | watch | ok |
+295 -326
View File
File diff suppressed because it is too large Load Diff
+154 -152
View File
@@ -1,7 +1,7 @@
{
"schema_version": "1.0",
"ok": true,
"generated_at": "2026-07-02",
"generated_at": "2026-06-17",
"skill_dir": ".",
"summary": {
"check_count": 39,
@@ -324,12 +324,12 @@
"status": "pass",
"expected": {
"status": "pass",
"detail": "initial load 987/1000; deferred 531767/120000; top deferred scripts 469568; resource governance governed; quality density 141.8",
"detail": "initial load 998/1000; deferred 525864/120000; top deferred scripts 464561; resource governance governed; quality density 140.3",
"evidence": "reports/context_budget.json"
},
"actual": {
"status": "pass",
"detail": "initial load 987/1000; deferred 531767/120000; top deferred scripts 469568; resource governance governed; quality density 141.8",
"detail": "initial load 998/1000; deferred 525864/120000; top deferred scripts 464561; resource governance governed; quality density 140.3",
"evidence": "reports/context_budget.json"
},
"paths": [
@@ -342,8 +342,8 @@
"key": "benchmark-release-lock-self-consistency",
"label": "Benchmark release lock matches source dirty state",
"status": "pass",
"expected": false,
"actual": false,
"expected": true,
"actual": true,
"paths": [
"reports/benchmark_reproducibility.json"
],
@@ -357,7 +357,7 @@
"actual": {
"available": true,
"clean": false,
"changed_file_count": 39
"changed_file_count": 27
},
"paths": [
"reports/benchmark_reproducibility.json"
@@ -398,8 +398,8 @@
"key": "overview-benchmark-commit",
"label": "overview embeds the benchmark commit",
"status": "pass",
"expected": "24bea607a2b16e766bc8f2bc8483f22fae1edc61",
"actual": "24bea607a2b16e766bc8f2bc8483f22fae1edc61",
"expected": "e79050ed12d057811d7d13ab7d8bcc5a06af76d4",
"actual": "e79050ed12d057811d7d13ab7d8bcc5a06af76d4",
"paths": [
"reports/benchmark_reproducibility.json",
"reports/skill-overview.json"
@@ -411,36 +411,36 @@
"label": "overview embeds benchmark summary fields",
"status": "pass",
"expected": {
"release_lock_ready": false,
"release_lock_ready": true,
"required_artifact_count": 25,
"missing_artifact_count": 0,
"source_contract_sha256": "b5cfa61c532d9ecd55d4d3a91aaf249bab0393251319a0f391422edb07a9e658",
"archive_sha256": "c56a8519244c0bc8ec17c92d4641c832629cc059f4b51fe177a2c039515253a7",
"source_contract_sha256": "5a99ef3133b0148cd5bbc1cd85fad4830bf34ca2bbac709f1e1fea2f810b1257",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"world_class_ledger_pending_count": 4,
"world_class_source_check_count": 19,
"world_class_source_pass_count": 12,
"world_class_source_blocked_count": 7,
"beta_test_ready": false,
"beta_test_blocker_count": 1,
"world_class_source_pass_count": 11,
"world_class_source_blocked_count": 8,
"beta_test_ready": true,
"beta_test_blocker_count": 0,
"beta_test_deferred_evidence_count": 4,
"public_claim_ready": false,
"public_claim_blocker_count": 4
"public_claim_blocker_count": 3
},
"actual": {
"release_lock_ready": false,
"release_lock_ready": true,
"required_artifact_count": 25,
"missing_artifact_count": 0,
"source_contract_sha256": "b5cfa61c532d9ecd55d4d3a91aaf249bab0393251319a0f391422edb07a9e658",
"archive_sha256": "c56a8519244c0bc8ec17c92d4641c832629cc059f4b51fe177a2c039515253a7",
"source_contract_sha256": "5a99ef3133b0148cd5bbc1cd85fad4830bf34ca2bbac709f1e1fea2f810b1257",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"world_class_ledger_pending_count": 4,
"world_class_source_check_count": 19,
"world_class_source_pass_count": 12,
"world_class_source_blocked_count": 7,
"beta_test_ready": false,
"beta_test_blocker_count": 1,
"world_class_source_pass_count": 11,
"world_class_source_blocked_count": 8,
"beta_test_ready": true,
"beta_test_blocker_count": 0,
"beta_test_deferred_evidence_count": 4,
"public_claim_ready": false,
"public_claim_blocker_count": 4
"public_claim_blocker_count": 3
},
"paths": [
"reports/benchmark_reproducibility.json",
@@ -454,13 +454,13 @@
"status": "pass",
"expected": {
"event_count": 1,
"adoption_sample_count": 1,
"activation_count": 1,
"accepted_count": 1,
"adoption_rate": 100.0,
"adoption_sample_count": 0,
"activation_count": 0,
"accepted_count": 0,
"adoption_rate": 0,
"risk_band": "low",
"event_types": {
"skill_activation": 1
"review_event": 1
},
"source_types": {
"manual": 1
@@ -468,13 +468,13 @@
},
"actual": {
"event_count": 1,
"adoption_sample_count": 1,
"activation_count": 1,
"accepted_count": 1,
"adoption_rate": 100.0,
"adoption_sample_count": 0,
"activation_count": 0,
"accepted_count": 0,
"adoption_rate": 0,
"risk_band": "low",
"event_types": {
"skill_activation": 1
"review_event": 1
},
"source_types": {
"manual": 1
@@ -497,8 +497,8 @@
"human_pending_count": 1,
"external_pending_count": 3,
"source_check_count": 19,
"source_pass_count": 12,
"source_blocked_count": 7,
"source_pass_count": 11,
"source_blocked_count": 8,
"ready_to_claim_world_class": false,
"decision": "evidence-pending"
},
@@ -509,8 +509,8 @@
"human_pending_count": 1,
"external_pending_count": 3,
"source_check_count": 19,
"source_pass_count": 12,
"source_blocked_count": 7,
"source_pass_count": 11,
"source_blocked_count": 8,
"ready_to_claim_world_class": false,
"decision": "evidence-pending"
},
@@ -530,7 +530,7 @@
"pending_count": 4,
"accepted_count": 0,
"source_check_count": 19,
"source_pass_count": 12
"source_pass_count": 11
},
"actual": {
"ready": false,
@@ -538,7 +538,7 @@
"pending_count": 4,
"accepted_count": 0,
"source_check_count": 19,
"source_pass_count": 12
"source_pass_count": 11
},
"paths": [
"reports/world_class_evidence_ledger.json",
@@ -550,8 +550,8 @@
"key": "interpretation-benchmark-commit",
"label": "interpretation embeds the benchmark commit",
"status": "pass",
"expected": "24bea607a2b16e766bc8f2bc8483f22fae1edc61",
"actual": "24bea607a2b16e766bc8f2bc8483f22fae1edc61",
"expected": "e79050ed12d057811d7d13ab7d8bcc5a06af76d4",
"actual": "e79050ed12d057811d7d13ab7d8bcc5a06af76d4",
"paths": [
"reports/benchmark_reproducibility.json",
"reports/skill-interpretation.json"
@@ -563,36 +563,36 @@
"label": "interpretation embeds benchmark summary fields",
"status": "pass",
"expected": {
"release_lock_ready": false,
"release_lock_ready": true,
"required_artifact_count": 25,
"missing_artifact_count": 0,
"source_contract_sha256": "b5cfa61c532d9ecd55d4d3a91aaf249bab0393251319a0f391422edb07a9e658",
"archive_sha256": "c56a8519244c0bc8ec17c92d4641c832629cc059f4b51fe177a2c039515253a7",
"source_contract_sha256": "5a99ef3133b0148cd5bbc1cd85fad4830bf34ca2bbac709f1e1fea2f810b1257",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"world_class_ledger_pending_count": 4,
"world_class_source_check_count": 19,
"world_class_source_pass_count": 12,
"world_class_source_blocked_count": 7,
"beta_test_ready": false,
"beta_test_blocker_count": 1,
"world_class_source_pass_count": 11,
"world_class_source_blocked_count": 8,
"beta_test_ready": true,
"beta_test_blocker_count": 0,
"beta_test_deferred_evidence_count": 4,
"public_claim_ready": false,
"public_claim_blocker_count": 4
"public_claim_blocker_count": 3
},
"actual": {
"release_lock_ready": false,
"release_lock_ready": true,
"required_artifact_count": 25,
"missing_artifact_count": 0,
"source_contract_sha256": "b5cfa61c532d9ecd55d4d3a91aaf249bab0393251319a0f391422edb07a9e658",
"archive_sha256": "c56a8519244c0bc8ec17c92d4641c832629cc059f4b51fe177a2c039515253a7",
"source_contract_sha256": "5a99ef3133b0148cd5bbc1cd85fad4830bf34ca2bbac709f1e1fea2f810b1257",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"world_class_ledger_pending_count": 4,
"world_class_source_check_count": 19,
"world_class_source_pass_count": 12,
"world_class_source_blocked_count": 7,
"beta_test_ready": false,
"beta_test_blocker_count": 1,
"world_class_source_pass_count": 11,
"world_class_source_blocked_count": 8,
"beta_test_ready": true,
"beta_test_blocker_count": 0,
"beta_test_deferred_evidence_count": 4,
"public_claim_ready": false,
"public_claim_blocker_count": 4
"public_claim_blocker_count": 3
},
"paths": [
"reports/benchmark_reproducibility.json",
@@ -606,13 +606,13 @@
"status": "pass",
"expected": {
"event_count": 1,
"adoption_sample_count": 1,
"activation_count": 1,
"accepted_count": 1,
"adoption_rate": 100.0,
"adoption_sample_count": 0,
"activation_count": 0,
"accepted_count": 0,
"adoption_rate": 0,
"risk_band": "low",
"event_types": {
"skill_activation": 1
"review_event": 1
},
"source_types": {
"manual": 1
@@ -620,13 +620,13 @@
},
"actual": {
"event_count": 1,
"adoption_sample_count": 1,
"activation_count": 1,
"accepted_count": 1,
"adoption_rate": 100.0,
"adoption_sample_count": 0,
"activation_count": 0,
"accepted_count": 0,
"adoption_rate": 0,
"risk_band": "low",
"event_types": {
"skill_activation": 1
"review_event": 1
},
"source_types": {
"manual": 1
@@ -649,8 +649,8 @@
"human_pending_count": 1,
"external_pending_count": 3,
"source_check_count": 19,
"source_pass_count": 12,
"source_blocked_count": 7,
"source_pass_count": 11,
"source_blocked_count": 8,
"ready_to_claim_world_class": false,
"decision": "evidence-pending"
},
@@ -661,8 +661,8 @@
"human_pending_count": 1,
"external_pending_count": 3,
"source_check_count": 19,
"source_pass_count": 12,
"source_blocked_count": 7,
"source_pass_count": 11,
"source_blocked_count": 8,
"ready_to_claim_world_class": false,
"decision": "evidence-pending"
},
@@ -682,7 +682,7 @@
"pending_count": 4,
"accepted_count": 0,
"source_check_count": 19,
"source_pass_count": 12
"source_pass_count": 11
},
"actual": {
"ready": false,
@@ -690,7 +690,7 @@
"pending_count": 4,
"accepted_count": 0,
"source_check_count": 19,
"source_pass_count": 12
"source_pass_count": 11
},
"paths": [
"reports/world_class_evidence_ledger.json",
@@ -739,7 +739,7 @@
"label": "可维护性",
"score": 100,
"reasons": [
"SKILL.md 约 314 个词/字。",
"SKILL.md 约 339 个词/字。",
"入口文件保持克制,可维护性较好。",
"references/ 已承载扩展指导。",
"scripts/ 已承载确定性逻辑。",
@@ -760,7 +760,7 @@
"label": "上下文成本",
"score": 42,
"reasons": [
"入口约 314 个词/字,references 约 16934 个词/字。",
"入口约 339 个词/字,references 约 16934 个词/字。",
"分数越高代表上下文成本越低。",
"上下文成本偏高,建议压缩入口或拆分 references。"
]
@@ -803,7 +803,7 @@
"label": "可维护性",
"score": 100,
"reasons": [
"SKILL.md 约 314 个词/字。",
"SKILL.md 约 339 个词/字。",
"入口文件保持克制,可维护性较好。",
"references/ 已承载扩展指导。",
"scripts/ 已承载确定性逻辑。",
@@ -824,7 +824,7 @@
"label": "上下文成本",
"score": 42,
"reasons": [
"入口约 314 个词/字,references 约 16934 个词/字。",
"入口约 339 个词/字,references 约 16934 个词/字。",
"分数越高代表上下文成本越低。",
"上下文成本偏高,建议压缩入口或拆分 references。"
]
@@ -954,7 +954,7 @@
"status": "pass",
"expected": {
"trigger": {
"description": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.",
"description": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.",
"activation": "manual",
"execution": "inline",
"shell": "bash"
@@ -982,7 +982,7 @@
"boundary_cards": [
{
"label": "Owned",
"body": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs."
"body": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution."
},
{
"label": "Adjacent",
@@ -996,7 +996,7 @@
},
"actual": {
"trigger": {
"description": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.",
"description": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.",
"activation": "manual",
"execution": "inline",
"shell": "bash"
@@ -1024,7 +1024,7 @@
"boundary_cards": [
{
"label": "Owned",
"body": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs."
"body": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution."
},
{
"label": "Adjacent",
@@ -1056,7 +1056,7 @@
"已生成 Output Review Adjudication,可记录盲评决策、一致率和待评审项。"
],
"gaps": [
"上下文成本需要补强:入口约 314 个词/字,references 约 16934 个词/字。"
"上下文成本需要补强:入口约 339 个词/字,references 约 16934 个词/字。"
],
"recommendations": [
"先改触发边界,再扩展工作流。",
@@ -1104,7 +1104,7 @@
"已生成 Output Review Adjudication,可记录盲评决策、一致率和待评审项。"
],
"gaps": [
"上下文成本需要补强:入口约 314 个词/字,references 约 16934 个词/字。"
"上下文成本需要补强:入口约 339 个词/字,references 约 16934 个词/字。"
],
"recommendations": [
"先改触发边界,再扩展工作流。",
@@ -1179,7 +1179,7 @@
"name": "包体膨胀风险",
"impact": 2,
"probability": 1,
"signal": "SKILL.md 约 314 个词/字。",
"signal": "SKILL.md 约 339 个词/字。",
"response": "先补证据和边界,再增加包体复杂度。"
},
{
@@ -1338,7 +1338,7 @@
"name": "包体膨胀风险",
"impact": 2,
"probability": 1,
"signal": "SKILL.md 约 314 个词/字。",
"signal": "SKILL.md 约 339 个词/字。",
"response": "先补证据和边界,再增加包体复杂度。"
},
{
@@ -1489,7 +1489,7 @@
"external_pending_count": 3,
"human_pending_count": 1,
"source_check_count": 19,
"source_pass_count": 12,
"source_pass_count": 11,
"conclusion_zh": "世界级证据尚未完成:4 项待补,0 项已接受。",
"conclusion_en": "World-class evidence is not complete: 4 pending, 0 accepted.",
"entries": [
@@ -1546,7 +1546,8 @@
"summary_zh": "真实外部客户端 metadata-only 事件仍未导入。",
"summary_en": "Real external-client metadata-only events have not been imported yet.",
"blocked_checks": [
"External events"
"External events",
"Adoption sample"
]
}
]
@@ -1560,7 +1561,7 @@
"external_pending_count": 3,
"human_pending_count": 1,
"source_check_count": 19,
"source_pass_count": 12,
"source_pass_count": 11,
"conclusion_zh": "世界级证据尚未完成:4 项待补,0 项已接受。",
"conclusion_en": "World-class evidence is not complete: 4 pending, 0 accepted.",
"entries": [
@@ -1617,7 +1618,8 @@
"summary_zh": "真实外部客户端 metadata-only 事件仍未导入。",
"summary_en": "Real external-client metadata-only events have not been imported yet.",
"blocked_checks": [
"External events"
"External events",
"Adoption sample"
]
}
]
@@ -1668,7 +1670,7 @@
"path": "scripts",
"label": "Deterministic helpers or local tooling",
"kind": "folder",
"file_count": 155
"file_count": 153
},
{
"path": "evals",
@@ -1680,10 +1682,10 @@
"path": "reports",
"label": "Generated evidence and overview artifacts",
"kind": "folder",
"file_count": 170
"file_count": 235
}
],
"file_count": 393,
"file_count": 456,
"folder_count": 4,
"distribution": [
{
@@ -1708,7 +1710,7 @@
},
{
"label": "scripts",
"value": 155
"value": 153
},
{
"label": "evals",
@@ -1716,7 +1718,7 @@
},
{
"label": "reports",
"value": 170
"value": 235
}
]
},
@@ -1756,7 +1758,7 @@
"path": "scripts",
"label": "Deterministic helpers or local tooling",
"kind": "folder",
"file_count": 155
"file_count": 153
},
{
"path": "evals",
@@ -1768,10 +1770,10 @@
"path": "reports",
"label": "Generated evidence and overview artifacts",
"kind": "folder",
"file_count": 170
"file_count": 235
}
],
"file_count": 393,
"file_count": 456,
"folder_count": 4,
"distribution": [
{
@@ -1796,7 +1798,7 @@
},
{
"label": "scripts",
"value": 155
"value": 153
},
{
"label": "evals",
@@ -1804,7 +1806,7 @@
},
{
"label": "reports",
"value": 170
"value": 235
}
]
},
@@ -1967,15 +1969,15 @@
"expected": {
"world_class_ledger_pending_count": 4,
"world_class_source_check_count": 19,
"world_class_source_pass_count": 12,
"world_class_source_blocked_count": 7,
"world_class_source_pass_count": 11,
"world_class_source_blocked_count": 8,
"public_claim_ready": false
},
"actual": {
"world_class_ledger_pending_count": 4,
"world_class_source_check_count": 19,
"world_class_source_pass_count": 12,
"world_class_source_blocked_count": 7,
"world_class_source_pass_count": 11,
"world_class_source_blocked_count": 8,
"public_claim_ready": false
},
"paths": [
@@ -1989,10 +1991,10 @@
"label": "Benchmark separates beta testing from public claims",
"status": "pass",
"expected": {
"beta_test_ready": false,
"beta_test_ready": true,
"public_claim_ready": false,
"human_review_complete": false,
"beta_release_ready": false,
"beta_release_ready": true,
"beta_release_scope": "beta/public test release without superiority, fully-reviewed, or world-class claims",
"deferred_evidence_keys": [
"human-adjudication",
@@ -2003,10 +2005,10 @@
"deferred_human_review": true
},
"actual": {
"beta_test_ready": false,
"beta_test_ready": true,
"public_claim_ready": false,
"human_review_complete": false,
"beta_release_ready": false,
"beta_release_ready": true,
"beta_release_scope": "beta/public test release without superiority, fully-reviewed, or world-class claims",
"deferred_evidence_keys": [
"human-adjudication",
@@ -2029,8 +2031,8 @@
"expected": {
"pending_count": 4,
"source_check_count": 19,
"source_pass_count": 12,
"source_blocked_count": 7,
"source_pass_count": 11,
"source_blocked_count": 8,
"ready_to_claim_world_class": false,
"preflight_counts_as_evidence": false,
"credential_value_exposed": false
@@ -2038,8 +2040,8 @@
"actual": {
"pending_count": 4,
"source_check_count": 19,
"source_pass_count": 12,
"source_blocked_count": 7,
"source_pass_count": 11,
"source_blocked_count": 8,
"ready_to_claim_world_class": false,
"preflight_counts_as_evidence": false,
"credential_value_exposed": false
@@ -2216,7 +2218,7 @@
"summary": {
"phase_queue_count": 2,
"phase_queue_blocked_count": 2,
"phase_queue_row_count": 11,
"phase_queue_row_count": 12,
"phase_queue_next_phase": "unblock-access",
"phase_queue_next_action_id": "human-adjudication-precheck-human-reviewer",
"phase_queue_next_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions",
@@ -2249,8 +2251,8 @@
"phase": "collect-source",
"priority": 40,
"status": "blocked",
"blocked_count": 7,
"row_count": 7,
"blocked_count": 8,
"row_count": 8,
"owners": [
"Browser/Chrome/IDE/provider client integrator",
"human reviewer",
@@ -2374,15 +2376,15 @@
"phase": "collect-source",
"priority": 40,
"status": "blocked",
"blocked_count": 1,
"row_count": 1,
"blocked_count": 2,
"row_count": 2,
"owners": [
"Browser/Chrome/IDE/provider client integrator"
],
"evidence_keys": [
"native-client-telemetry"
],
"next_action_id": "native-client-telemetry-source-check-external_source_events",
"next_action_id": "native-client-telemetry-source-check-adoption_sample_count",
"verification_command": "python3 scripts/yao.py telemetry-import . --input-jsonl .yao/telemetry_spool/external_events.jsonl && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions",
"counts_as_completion": false
}
@@ -2392,7 +2394,7 @@
"operator_runbook_summary": {
"phase_queue_count": 2,
"phase_queue_blocked_count": 2,
"phase_queue_row_count": 11,
"phase_queue_row_count": 12,
"phase_queue_next_phase": "unblock-access",
"phase_queue_next_action_id": "human-adjudication-precheck-human-reviewer",
"phase_queue_next_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions",
@@ -2425,8 +2427,8 @@
"phase": "collect-source",
"priority": 40,
"status": "blocked",
"blocked_count": 7,
"row_count": 7,
"blocked_count": 8,
"row_count": 8,
"owners": [
"Browser/Chrome/IDE/provider client integrator",
"human reviewer",
@@ -2550,15 +2552,15 @@
"phase": "collect-source",
"priority": 40,
"status": "blocked",
"blocked_count": 1,
"row_count": 1,
"blocked_count": 2,
"row_count": 2,
"owners": [
"Browser/Chrome/IDE/provider client integrator"
],
"evidence_keys": [
"native-client-telemetry"
],
"next_action_id": "native-client-telemetry-source-check-external_source_events",
"next_action_id": "native-client-telemetry-source-check-adoption_sample_count",
"verification_command": "python3 scripts/yao.py telemetry-import . --input-jsonl .yao/telemetry_spool/external_events.jsonl && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions",
"counts_as_completion": false
}
@@ -2672,15 +2674,15 @@
"phase": "collect-source",
"priority": 40,
"status": "blocked",
"blocked_count": 1,
"row_count": 1,
"blocked_count": 2,
"row_count": 2,
"owners": [
"Browser/Chrome/IDE/provider client integrator"
],
"evidence_keys": [
"native-client-telemetry"
],
"next_action_id": "native-client-telemetry-source-check-external_source_events",
"next_action_id": "native-client-telemetry-source-check-adoption_sample_count",
"verification_command": "python3 scripts/yao.py telemetry-import . --input-jsonl .yao/telemetry_spool/external_events.jsonl && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions",
"counts_as_completion": false
}
@@ -2691,7 +2693,7 @@
"summary": {
"phase_queue_count": 2,
"phase_queue_blocked_count": 2,
"phase_queue_row_count": 11,
"phase_queue_row_count": 12,
"phase_queue_next_phase": "unblock-access",
"phase_queue_next_action_id": "human-adjudication-precheck-human-reviewer",
"phase_queue_next_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions",
@@ -2724,8 +2726,8 @@
"phase": "collect-source",
"priority": 40,
"status": "blocked",
"blocked_count": 7,
"row_count": 7,
"blocked_count": 8,
"row_count": 8,
"owners": [
"Browser/Chrome/IDE/provider client integrator",
"human reviewer",
@@ -2744,7 +2746,7 @@
"operator_runbook_summary": {
"phase_queue_count": 2,
"phase_queue_blocked_count": 2,
"phase_queue_row_count": 11,
"phase_queue_row_count": 12,
"phase_queue_next_phase": "unblock-access",
"phase_queue_next_action_id": "human-adjudication-precheck-human-reviewer",
"phase_queue_next_command": "python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions",
@@ -2777,8 +2779,8 @@
"phase": "collect-source",
"priority": 40,
"status": "blocked",
"blocked_count": 7,
"row_count": 7,
"blocked_count": 8,
"row_count": 8,
"owners": [
"Browser/Chrome/IDE/provider client integrator",
"human reviewer",
@@ -2902,15 +2904,15 @@
"phase": "collect-source",
"priority": 40,
"status": "blocked",
"blocked_count": 1,
"row_count": 1,
"blocked_count": 2,
"row_count": 2,
"owners": [
"Browser/Chrome/IDE/provider client integrator"
],
"evidence_keys": [
"native-client-telemetry"
],
"next_action_id": "native-client-telemetry-source-check-external_source_events",
"next_action_id": "native-client-telemetry-source-check-adoption_sample_count",
"verification_command": "python3 scripts/yao.py telemetry-import . --input-jsonl .yao/telemetry_spool/external_events.jsonl && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions",
"counts_as_completion": false
}
@@ -3024,15 +3026,15 @@
"phase": "collect-source",
"priority": 40,
"status": "blocked",
"blocked_count": 1,
"row_count": 1,
"blocked_count": 2,
"row_count": 2,
"owners": [
"Browser/Chrome/IDE/provider client integrator"
],
"evidence_keys": [
"native-client-telemetry"
],
"next_action_id": "native-client-telemetry-source-check-external_source_events",
"next_action_id": "native-client-telemetry-source-check-adoption_sample_count",
"verification_command": "python3 scripts/yao.py telemetry-import . --input-jsonl .yao/telemetry_spool/external_events.jsonl && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions",
"counts_as_completion": false
}
@@ -3146,15 +3148,15 @@
"phase": "collect-source",
"priority": 40,
"status": "blocked",
"blocked_count": 1,
"row_count": 1,
"blocked_count": 2,
"row_count": 2,
"owners": [
"Browser/Chrome/IDE/provider client integrator"
],
"evidence_keys": [
"native-client-telemetry"
],
"next_action_id": "native-client-telemetry-source-check-external_source_events",
"next_action_id": "native-client-telemetry-source-check-adoption_sample_count",
"verification_command": "python3 scripts/yao.py telemetry-import . --input-jsonl .yao/telemetry_spool/external_events.jsonl && python3 scripts/yao.py world-class-preflight . --submissions-dir evidence/world_class/submissions",
"counts_as_completion": false
}
@@ -3254,8 +3256,8 @@
"human_pending_count": 1,
"external_pending_count": 3,
"source_check_count": 19,
"source_pass_count": 12,
"source_blocked_count": 7,
"source_pass_count": 11,
"source_blocked_count": 8,
"plan_keys": [
"human-adjudication",
"native-client-telemetry",
@@ -3412,8 +3414,8 @@
"human_pending_count": 1,
"external_pending_count": 3,
"source_check_count": 19,
"source_pass_count": 12,
"source_blocked_count": 7,
"source_pass_count": 11,
"source_blocked_count": 8,
"plan_keys": [
"human-adjudication",
"native-client-telemetry",
@@ -3577,16 +3579,16 @@
"score `91`",
"`16` gates",
"`3` warnings",
"`69` declared internal modules",
"`86 / 86` CLI help smoke checks passing across `155` scripts",
"`580` zip entries",
"archive with `580` entries",
"`67` declared internal modules",
"`86 / 86` CLI help smoke checks passing across `153` scripts",
"`689` zip entries",
"archive with `689` entries",
"`12` installer permission checks enforced",
"`0` permission failures",
"`25` required artifacts",
"`23` reproduction commands",
"initial load `987/1000`",
"target count is `83`"
"initial load `998/1000`",
"target count is `82`"
],
"actual": "all present",
"paths": [
+1 -1
View File
@@ -1,6 +1,6 @@
# Evidence Consistency
Generated at: `2026-07-02`
Generated at: `2026-06-17`
## Summary
+1 -7
View File
@@ -8,8 +8,7 @@
"installed_skill_dir": "tests/tmp_review_studio/install-root/simulate-yao-meta-skill/yao-meta-skill",
"summary": {
"archive_present": true,
"archive_entry_count": 598,
"nested_skill_entry_count": 0,
"archive_entry_count": 696,
"archive_extracted": true,
"entrypoint_loaded": true,
"manifest_loaded": true,
@@ -34,11 +33,6 @@
"status": "pass",
"detail": "Archive has no absolute or parent-traversal entries"
},
{
"id": "single-skill-entrypoint",
"status": "pass",
"detail": "Installed package exposes only the root SKILL.md entrypoint"
},
{
"id": "single-top-level",
"status": "pass",
-2
View File
@@ -3,7 +3,6 @@
- OK: `True`
- Package directory: `tests/tmp_review_studio/dist`
- Archive extracted: `True`
- Nested SKILL.md entries: `0`
- Entrypoint loaded: `True`
- Manifest loaded: `True`
- Interface loaded: `True`
@@ -19,7 +18,6 @@
| --- | --- | --- |
| `archive-present` | `pass` | Package archive exists: tests/tmp_review_studio/dist/yao-meta-skill.zip |
| `archive-safe-paths` | `pass` | Archive has no absolute or parent-traversal entries |
| `single-skill-entrypoint` | `pass` | Installed package exposes only the root SKILL.md entrypoint |
| `single-top-level` | `pass` | Archive top-level directory is yao-meta-skill |
| `entrypoint-load` | `pass` | Installed SKILL.md frontmatter is readable |
| `entrypoint-name` | `pass` | Installed SKILL.md name matches package directory |
@@ -35,8 +35,8 @@
"label": "Current",
"ranking_state": "selected_by_dev",
"promotion_state": "kept_current",
"description": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.",
"tokens": 54,
"description": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.",
"tokens": 53,
"dev_errors": 0,
"holdout_errors": 0,
"reason_tags": []
@@ -118,8 +118,8 @@
],
"review_template": {
"target": "yao-meta-skill",
"current_description": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.",
"candidate_description": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.",
"current_description": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.",
"candidate_description": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.",
"focus": [
"no_candidate_outperformed_current"
]
@@ -27,7 +27,7 @@
| Role | Label | Ranking State | Promotion State | Tokens | Dev Errors | Holdout Errors |
| --- | --- | --- | --- | ---: | ---: | ---: |
| baseline | `Baseline` | reference | reference | 8 | 1 | 0 |
| current | `Current` | selected_by_dev | kept_current | 54 | 0 | 0 |
| current | `Current` | selected_by_dev | kept_current | 53 | 0 | 0 |
| candidate | `Minimal` | not_selected | blocked | 41 | 2 | 0 |
| candidate | `Guardrail` | not_selected | blocked | 56 | 2 | 0 |
| candidate | `Balanced` | not_selected | blocked | 60 | 2 | 0 |
@@ -37,8 +37,8 @@
## Human Review Stub
- target: yao-meta-skill
- current description: Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.
- candidate description: Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.
- current description: Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.
- candidate description: Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.
- review focus: no_candidate_outperformed_current
## Artifact Paths
@@ -1,8 +1,8 @@
# Human Review
- target: yao-meta-skill
- current description: Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.
- candidate description: Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.
- current description: Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.
- candidate description: Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.
- suggested focus: no_candidate_outperformed_current
Use the shared template in `references/human-review-template.md` to complete the final decision.
+2 -2
View File
@@ -43,7 +43,7 @@
| Route | Precision | Recall | Avg Margin |
| --- | ---: | ---: | ---: |
| `yao-meta-skill` | 1.0 | 1.0 | 0.644 |
| `yao-meta-skill` | 1.0 | 1.0 | 0.701 |
| `team-frontend-review` | 1.0 | 1.0 | 0.805 |
| `governed-incident-command` | 1.0 | 1.0 | 0.709 |
| `governed-incident-command` | 1.0 | 1.0 | 0.586 |
| `no_route` | 1.0 | 1.0 | - |
+3 -9
View File
@@ -1,16 +1,15 @@
{
"ok": true,
"schema_version": "2.0",
"generated_at": "2026-06-21",
"generated_at": "2026-06-17",
"skill_dir": ".",
"package_dir": "dist",
"summary": {
"target_count": 4,
"adapter_count": 4,
"archive_present": true,
"archive_sha256": "c56a8519244c0bc8ec17c92d4641c832629cc059f4b51fe177a2c039515253a7",
"archive_entry_count": 580,
"nested_skill_entry_count": 0,
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"archive_entry_count": 689,
"failure_count": 0,
"warning_count": 0
},
@@ -615,11 +614,6 @@
"status": "pass",
"detail": "Archive contains yao-meta-skill/agents/interface.yaml"
},
{
"id": "archive-single-skill-entrypoint",
"status": "pass",
"detail": "Archive exposes only the root SKILL.md entrypoint"
},
{
"id": "archive-excludes-generated",
"status": "pass",
+1 -3
View File
@@ -4,8 +4,7 @@
- Package directory: `dist`
- Targets: `4 / 4` adapters present
- Archive present: `True`
- Archive SHA256: `c56a8519244c0bc8ec17c92d4641c832629cc059f4b51fe177a2c039515253a7`
- Nested SKILL.md entries: `0`
- Archive SHA256: `7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2`
- Failures: `0`
- Warnings: `0`
@@ -133,7 +132,6 @@
| `archive-entry-yao-meta-skill/SKILL.md` | `pass` | Archive contains yao-meta-skill/SKILL.md |
| `archive-entry-yao-meta-skill/manifest.json` | `pass` | Archive contains yao-meta-skill/manifest.json |
| `archive-entry-yao-meta-skill/agents/interface.yaml` | `pass` | Archive contains yao-meta-skill/agents/interface.yaml |
| `archive-single-skill-entrypoint` | `pass` | Archive exposes only the root SKILL.md entrypoint |
| `archive-excludes-generated` | `pass` | Archive excludes generated dist/, .previews/, and tests/tmp* contents |
| `registry-ok` | `pass` | Registry audit is OK |
| `registry-name-match` | `pass` | Registry package name matches package manifest |
+32 -32
View File
@@ -9,9 +9,9 @@
{
"name": "yao-meta-skill",
"winner_label": "Current",
"winner_description": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.",
"winner_tokens": 54,
"current_tokens": 54,
"winner_description": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.",
"winner_tokens": 53,
"current_tokens": 53,
"winner_holdout_fp": 0,
"winner_holdout_fn": 0,
"current_holdout_fp": 0,
@@ -42,44 +42,44 @@
"calibration": {
"holdout": {
"threshold": 0.33,
"mean_positive_score": 0.704,
"mean_non_trigger_score": 0.0,
"mean_near_neighbor_score": 0.0,
"min_positive_score": 0.465,
"max_non_trigger_score": 0.0,
"score_gap": 0.465,
"threshold_margin": 0.135,
"positive_threshold_buffer": 0.135,
"negative_threshold_buffer": 0.33,
"mean_positive_score": 0.908,
"mean_non_trigger_score": 0.003,
"mean_near_neighbor_score": 0.006,
"min_positive_score": 0.767,
"max_non_trigger_score": 0.023,
"score_gap": 0.744,
"threshold_margin": 0.307,
"positive_threshold_buffer": 0.437,
"negative_threshold_buffer": 0.307,
"boundary_case_count": 0,
"boundary_case_rate": 0.0,
"risk_band": "healthy"
},
"blind_holdout": {
"threshold": 0.33,
"mean_positive_score": 0.377,
"mean_non_trigger_score": 0.024,
"mean_near_neighbor_score": 0.006,
"min_positive_score": 0.374,
"max_non_trigger_score": 0.084,
"score_gap": 0.29,
"threshold_margin": 0.044,
"positive_threshold_buffer": 0.044,
"negative_threshold_buffer": 0.246,
"boundary_case_count": 2,
"boundary_case_rate": 0.333,
"risk_band": "watch"
"mean_positive_score": 0.669,
"mean_non_trigger_score": 0.116,
"mean_near_neighbor_score": 0.152,
"min_positive_score": 0.665,
"max_non_trigger_score": 0.305,
"score_gap": 0.36,
"threshold_margin": 0.025,
"positive_threshold_buffer": 0.335,
"negative_threshold_buffer": 0.025,
"boundary_case_count": 1,
"boundary_case_rate": 0.167,
"risk_band": "tight"
},
"adversarial_holdout": {
"threshold": 0.33,
"mean_positive_score": 0.81,
"mean_positive_score": 1.0,
"mean_non_trigger_score": 0.0,
"mean_near_neighbor_score": 0.0,
"min_positive_score": 0.808,
"min_positive_score": 1.0,
"max_non_trigger_score": 0.0,
"score_gap": 0.808,
"score_gap": 1.0,
"threshold_margin": 0.33,
"positive_threshold_buffer": 0.478,
"positive_threshold_buffer": 0.67,
"negative_threshold_buffer": 0.33,
"boundary_case_count": 0,
"boundary_case_rate": 0.0,
@@ -170,7 +170,7 @@
"route_metrics": {
"precision": 1.0,
"recall": 1.0,
"average_margin": 0.644,
"average_margin": 0.701,
"misroute_count": 0,
"ambiguous_case_count": 0
}
@@ -193,8 +193,8 @@
"label": "Current",
"ranking_state": "selected_by_dev",
"promotion_state": "kept_current",
"description": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.",
"tokens": 54,
"description": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.",
"tokens": 53,
"dev_errors": 0,
"holdout_errors": 0,
"reason_tags": []
@@ -702,7 +702,7 @@
"route_metrics": {
"precision": 1.0,
"recall": 1.0,
"average_margin": 0.709,
"average_margin": 0.586,
"misroute_count": 0,
"ambiguous_case_count": 0
}
+1 -1
View File
@@ -1,5 +1,5 @@
{
"skill_name": "yao-meta-skill-trigger-coverage-merge",
"skill_name": "yao-meta-skill",
"relevance": "prompt-aware",
"primary_task_family": {
"key": "execution_operation",
+1 -1
View File
@@ -1,6 +1,6 @@
# Prompt Quality Profile
Skill: `yao-meta-skill-trigger-coverage-merge`
Skill: `yao-meta-skill`
Relevance: `prompt-aware`
Overall quality score: `89.0/100`
+3 -21
View File
@@ -1,11 +1,11 @@
{
"schema_version": "1.0",
"ok": true,
"generated_at": "2026-06-13",
"generated_at": "2026-06-17",
"root": ".",
"summary": {
"target_python": "3.11",
"file_count": 235,
"file_count": 232,
"issue_count": 0,
"syntax_error_count": 0,
"fstring_311_violation_count": 0,
@@ -35,7 +35,7 @@
"issues": []
},
{
"path": "reports/blind-human-review-2026-06-29/generate_pack.py",
"path": "geo-ranking-article-generator/scripts/build_html_index.py",
"ok": true,
"issue_count": 0,
"issues": []
@@ -916,12 +916,6 @@
"issue_count": 0,
"issues": []
},
{
"path": "scripts/yao_cli_operator_commands.py",
"ok": true,
"issue_count": 0,
"issues": []
},
{
"path": "scripts/yao_cli_output_commands.py",
"ok": true,
@@ -946,12 +940,6 @@
"issue_count": 0,
"issues": []
},
{
"path": "scripts/yao_cli_parser_operator.py",
"ok": true,
"issue_count": 0,
"issues": []
},
{
"path": "scripts/yao_cli_report_commands.py",
"ok": true,
@@ -1102,12 +1090,6 @@
"issue_count": 0,
"issues": []
},
{
"path": "tests/verify_operator_ux.py",
"ok": true,
"issue_count": 0,
"issues": []
},
{
"path": "tests/verify_output_eval_lab.py",
"ok": true,
+2 -2
View File
@@ -1,12 +1,12 @@
# Python Compatibility
Generated at: `2026-06-13`
Generated at: `2026-06-17`
## Summary
- decision: `pass`
- target python: `3.11`
- files scanned: `235`
- files scanned: `232`
- issues: `0`
- syntax errors: `0`
- f-string 3.11 violations: `0`
+16 -18
View File
@@ -1,6 +1,6 @@
{
"skill_name": "yao-meta-skill",
"description": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.",
"description": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.",
"intent_confidence": {
"score": 100,
"band": "high",
@@ -50,41 +50,39 @@
},
{
"source_type": "research",
"name": "Hypothesis-test-learn loop",
"name": "Human-in-the-loop verification",
"evidence_mode": "curated-pattern-track",
"matched_keywords": [
"test",
"iteration"
"review",
"govern"
],
"borrow": "Borrow a small hypothesis-test-learn loop so the first revision is evidence-backed.",
"avoid": "Do not create experimental overhead that exceeds the skill's real risk tier.",
"why_relevant": "This track matches: test, iteration."
"borrow": "Borrow a review checkpoint wherever trust matters more than raw speed.",
"avoid": "Do not force every skill through heavyweight review when the risk is low.",
"why_relevant": "This track matches: review, govern."
},
{
"source_type": "principles",
"name": "Boundary-first design",
"evidence_mode": "curated-pattern-track",
"matched_keywords": [
"route",
"trigger",
"exclude"
"route"
],
"borrow": "Borrow the discipline of defining what the skill should not own before growing the package.",
"avoid": "Do not expand execution assets until route boundaries stay clean.",
"why_relevant": "This track matches: route, trigger, exclude."
"why_relevant": "This track matches: route."
}
],
"synthesis": {
"borrow_now": [
"Borrow progressive disclosure: keep the entrypoint lean and move depth into references or scripts.",
"Borrow a small hypothesis-test-learn loop so the first revision is evidence-backed.",
"Borrow a review checkpoint wherever trust matters more than raw speed.",
"Borrow the discipline of defining what the skill should not own before growing the package.",
"Borrow the way it turns a messy workflow into a repeatable operating path.",
"Borrow the clear execution entrypoints and command structure."
],
"avoid_now": [
"Do not let packaging or platform concerns swallow the core job boundary.",
"Do not create experimental overhead that exceeds the skill's real risk tier.",
"Do not force every skill through heavyweight review when the risk is low.",
"Do not expand execution assets until route boundaries stay clean.",
"Do not import process overhead that only exists for that project's scale.",
"Do not copy repo-specific commands or environment assumptions verbatim."
@@ -120,10 +118,10 @@
"score": 4
},
{
"name": "Hypothesis-test-learn loop",
"name": "Human-in-the-loop verification",
"source_type": "research",
"borrow": "Borrow a small hypothesis-test-learn loop so the first revision is evidence-backed.",
"avoid": "Do not create experimental overhead that exceeds the skill's real risk tier.",
"borrow": "Borrow a review checkpoint wherever trust matters more than raw speed.",
"avoid": "Do not force every skill through heavyweight review when the risk is low.",
"gates": {
"recurrence": true,
"generativity": true,
@@ -237,11 +235,11 @@
"summary": "Start by borrowing this pattern: Borrow progressive disclosure: keep the entrypoint lean and move depth into references or scripts. Avoid this for the first pass: Do not let packaging or platform concerns swallow the core job boundary.",
"borrow_now": [
"Borrow progressive disclosure: keep the entrypoint lean and move depth into references or scripts.",
"Borrow a small hypothesis-test-learn loop so the first revision is evidence-backed."
"Borrow a review checkpoint wherever trust matters more than raw speed."
],
"avoid_for_now": [
"Do not let packaging or platform concerns swallow the core job boundary.",
"Do not create experimental overhead that exceeds the skill's real risk tier."
"Do not force every skill through heavyweight review when the risk is low."
],
"why": "There is a real design conflict to resolve: The stated preference leans lightweight or speed-first, while the benchmark mix leans toward governance, review, or heavier evaluation structure.",
"user_decision_required": true
+9 -9
View File
@@ -1,7 +1,7 @@
# Reference Synthesis
Skill: `yao-meta-skill`
- Description: Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.
- Description: Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.
- Intent confidence: `100/100` (`high`)
## Live GitHub Benchmarks
@@ -33,24 +33,24 @@ Skill: `yao-meta-skill`
- Borrow: Borrow progressive disclosure: keep the entrypoint lean and move depth into references or scripts.
- Avoid: Do not let packaging or platform concerns swallow the core job boundary.
### Hypothesis-test-learn loop
### Human-in-the-loop verification
- Type: `research`
- Evidence mode: `curated-pattern-track`
- Why relevant: This track matches: test, iteration.
- Borrow: Borrow a small hypothesis-test-learn loop so the first revision is evidence-backed.
- Avoid: Do not create experimental overhead that exceeds the skill's real risk tier.
- Why relevant: This track matches: review, govern.
- Borrow: Borrow a review checkpoint wherever trust matters more than raw speed.
- Avoid: Do not force every skill through heavyweight review when the risk is low.
### Boundary-first design
- Type: `principles`
- Evidence mode: `curated-pattern-track`
- Why relevant: This track matches: route, trigger, exclude.
- Why relevant: This track matches: route.
- Borrow: Borrow the discipline of defining what the skill should not own before growing the package.
- Avoid: Do not expand execution assets until route boundaries stay clean.
## Borrow Now
- Borrow progressive disclosure: keep the entrypoint lean and move depth into references or scripts.
- Borrow a small hypothesis-test-learn loop so the first revision is evidence-backed.
- Borrow a review checkpoint wherever trust matters more than raw speed.
- Borrow the discipline of defining what the skill should not own before growing the package.
- Borrow the way it turns a messy workflow into a repeatable operating path.
- Borrow the clear execution entrypoints and command structure.
@@ -58,7 +58,7 @@ Skill: `yao-meta-skill`
## Avoid Now
- Do not let packaging or platform concerns swallow the core job boundary.
- Do not create experimental overhead that exceeds the skill's real risk tier.
- Do not force every skill through heavyweight review when the risk is low.
- Do not expand execution assets until route boundaries stay clean.
- Do not import process overhead that only exists for that project's scale.
- Do not copy repo-specific commands or environment assumptions verbatim.
@@ -69,7 +69,7 @@ Skill: `yao-meta-skill`
- Acceptance threshold: `4/4`
- Accepted patterns:
- **Official skill anatomy and context discipline**: 4/4 (recurrence, generativity, distinctiveness, boundary)
- **Hypothesis-test-learn loop**: 4/4 (recurrence, generativity, distinctiveness, boundary)
- **Human-in-the-loop verification**: 4/4 (recurrence, generativity, distinctiveness, boundary)
- **Boundary-first design**: 4/4 (recurrence, generativity, distinctiveness, boundary)
- **obra/superpowers**: 4/4 (recurrence, generativity, distinctiveness, boundary)
- **affaan-m/ECC**: 4/4 (recurrence, generativity, distinctiveness, boundary)
+5 -5
View File
@@ -7,7 +7,7 @@
"schema_version": "2.0",
"name": "yao-meta-skill",
"version": "1.1.0",
"description": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.",
"description": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.",
"targets": [
"openai",
"claude",
@@ -21,8 +21,8 @@
"trust_level": "local",
"license": "MIT",
"checksums": {
"package_sha256": "db71157184dc649ee72dfcaf399204d44a366d942393d055571e0137d42c9f7c",
"archive_sha256": "c56a8519244c0bc8ec17c92d4641c832629cc059f4b51fe177a2c039515253a7"
"package_sha256": "5a99ef3133b0148cd5bbc1cd85fad4830bf34ca2bbac709f1e1fea2f810b1257",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2"
},
"compatibility": {
"openai": "pass",
@@ -53,7 +53,7 @@
},
"distribution": {
"archive_verified": true,
"archive_sha256": "c56a8519244c0bc8ec17c92d4641c832629cc059f4b51fe177a2c039515253a7",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"package_verification": "reports/package_verification.json",
"install_simulated": true,
"install_simulation": "reports/install_simulation.json"
@@ -78,7 +78,7 @@
"vscode"
],
"package_metadata": "registry/packages/yao-meta-skill.json",
"package_sha256": "db71157184dc649ee72dfcaf399204d44a366d942393d055571e0137d42c9f7c"
"package_sha256": "5a99ef3133b0148cd5bbc1cd85fad4830bf34ca2bbac709f1e1fea2f810b1257"
}
]
},
+2 -2
View File
@@ -6,8 +6,8 @@
- Maturity: `governed`
- Owner: `Yao Team`
- License: `MIT`
- Package SHA256: `db71157184dc649ee72dfcaf399204d44a366d942393d055571e0137d42c9f7c`
- Archive SHA256: `c56a8519244c0bc8ec17c92d4641c832629cc059f4b51fe177a2c039515253a7`
- Package SHA256: `5a99ef3133b0148cd5bbc1cd85fad4830bf34ca2bbac709f1e1fea2f810b1257`
- Archive SHA256: `7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2`
- Install simulated: `True`
## Compatibility
File diff suppressed because one or more lines are too long
+786 -747
View File
File diff suppressed because it is too large Load Diff
+8 -8
View File
@@ -188,7 +188,7 @@ th {
<section class="hero">
<p class="minor">Review Viewer</p>
<h1>Yao Meta Skill</h1>
<p class="lede">Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.</p>
<p class="lede">Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.</p>
<div class="meta">
<span>maturity: governed</span>
<span>archetype: governed</span>
@@ -200,17 +200,17 @@ th {
<section>
<h2>Architecture at a glance</h2>
<div class="arch-grid"><div class='arch-step'><div class='step-label'>Inputs</div><div class='step-detail'>workflow, prompt, transcript, docs, or notes</div></div><div class='arch-step'><div class='step-label'>Boundary</div><div class='step-detail'>Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.</div></div><div class='arch-step'><div class='step-label'>Logic</div><div class='step-detail'>One-off/no reusable process: `Do not create a skill`; `near-neighbor`; require `repeated use` + `reusable output contract`.; Capture job, output, exclusions, constraints, standards, lightest fit.; Scan up to `3-5` references: external, user, local; skip tiny edits; surface only uncertainty/conflict.</div></div><div class='arch-step'><div class='step-label'>Usage</div><div class='step-detail'>Use $yao-meta-skill to turn my workflow or notes into a reusable skill with lean structure, clear triggering, and the right evals.; Use this skill when the request matches: Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.</div></div><div class='arch-step'><div class='step-label'>Next</div><div class='step-detail'>Review the top iteration directions before growing the package.</div></div></div>
<div class="arch-grid"><div class='arch-step'><div class='step-label'>Inputs</div><div class='step-detail'>workflow, prompt, transcript, docs, or notes</div></div><div class='arch-step'><div class='step-label'>Boundary</div><div class='step-detail'>Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.</div></div><div class='arch-step'><div class='step-label'>Logic</div><div class='step-detail'>For one-off/no reusable process: `Do not create a skill`; `near-neighbor`; require `repeated use` + `reusable output contract`.; Capture job, output, exclusions, constraints, standards, and the lightest fit.; Scan references in order: external benchmark, user source, local fit; surface only uncertainty or conflict.</div></div><div class='arch-step'><div class='step-label'>Usage</div><div class='step-detail'>Use $yao-meta-skill to turn my workflow or notes into a reusable skill with lean structure, clear triggering, and the right evals.; Use this skill when the request matches: Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.</div></div><div class='arch-step'><div class='step-label'>Next</div><div class='step-detail'>Review the top iteration directions before growing the package.</div></div></div>
</section>
<section class="grid">
<div class="panel">
<h2>Core logic</h2>
<ul><li>One-off/no reusable process: `Do not create a skill`; `near-neighbor`; require `repeated use` + `reusable output contract`.</li><li>Capture job, output, exclusions, constraints, standards, lightest fit.</li><li>Scan up to `3-5` references: external, user, local; skip tiny edits; surface only uncertainty/conflict.</li><li>Write `description` early; route/boundary edits need `trigger_eval.py`; releases need risk-matched gates before folders.</li><li>Add output-risk, artifact-design, prompt-quality, system-model, next directions only when earned.</li></ul>
<ul><li>For one-off/no reusable process: `Do not create a skill`; `near-neighbor`; require `repeated use` + `reusable output contract`.</li><li>Capture job, output, exclusions, constraints, standards, and the lightest fit.</li><li>Scan references in order: external benchmark, user source, local fit; surface only uncertainty or conflict.</li><li>Write `description` early, test route quality, then add only earned folders and gates.</li><li>Add output-risk, artifact-design, prompt-quality, system-model, and next directions only when useful.</li></ul>
</div>
<div class="panel">
<h2>How to use it</h2>
<ul><li>Use $yao-meta-skill to turn my workflow or notes into a reusable skill with lean structure, clear triggering, and the right evals.</li><li>Use this skill when the request matches: Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.</li></ul>
<ul><li>Use $yao-meta-skill to turn my workflow or notes into a reusable skill with lean structure, clear triggering, and the right evals.</li><li>Use this skill when the request matches: Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.</li></ul>
</div>
</section>
@@ -232,13 +232,13 @@ th {
</div>
<div class="panel">
<h2>Compare view</h2>
<div class='baseline-box'><p><strong>Winner:</strong> Current</p><p class='minor'>{&#x27;priority&#x27;: [&#x27;fewest false positives&#x27;, &#x27;fewest false negatives&#x27;, &#x27;highest near-neighbor pass rate&#x27;, &#x27;highest negative pass rate&#x27;, &#x27;highest precision&#x27;, &#x27;highest recall&#x27;, &#x27;shortest description&#x27;]}</p><table><thead><tr><th>Variant</th><th>Tokens</th><th>Dev Errors</th><th>Holdout Errors</th><th>Strategy</th></tr></thead><tbody><tr><td>Baseline</td><td>8</td><td>0</td><td>0</td><td>existing</td></tr><tr><td>Current</td><td>54</td><td>0</td><td>0</td><td>current</td></tr><tr><td>Current</td><td>54</td><td>0</td><td>0</td><td>current</td></tr></tbody></table></div>
<div class='baseline-box'><p><strong>Winner:</strong> Current</p><p class='minor'>{&#x27;priority&#x27;: [&#x27;fewest false positives&#x27;, &#x27;fewest false negatives&#x27;, &#x27;highest near-neighbor pass rate&#x27;, &#x27;highest negative pass rate&#x27;, &#x27;highest precision&#x27;, &#x27;highest recall&#x27;, &#x27;shortest description&#x27;]}</p><table><thead><tr><th>Variant</th><th>Tokens</th><th>Dev Errors</th><th>Holdout Errors</th><th>Strategy</th></tr></thead><tbody><tr><td>Baseline</td><td>8</td><td>0</td><td>0</td><td>existing</td></tr><tr><td>Current</td><td>53</td><td>0</td><td>0</td><td>current</td></tr><tr><td>Current</td><td>53</td><td>0</td><td>0</td><td>current</td></tr></tbody></table></div>
</div>
</section>
<section>
<h2>Variant diff studio</h2>
<div class="variant-grid"><div class='variant-card'><div class='variant-head'><h3>Baseline</h3><span>existing</span></div><p class='variant-description'>Create and improve agent skills.</p><div class='variant-metrics'><span>tokens 8 (0)</span><span>dev 0 (0)</span><span>holdout 0 (0)</span></div><div class='variant-cues'><p><strong>Adds relative to baseline</strong></p><ul><li>Create and improve agent skills.</li></ul><p><strong>Drops from baseline</strong></p><p class='minor'>No dropped cues.</p></div></div><div class='variant-card'><div class='variant-head'><h3>Current</h3><span>current</span></div><p class='variant-description'>Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.</p><div class='variant-metrics'><span>tokens 54 (+46)</span><span>dev 0 (0)</span><span>holdout 0 (0)</span></div><div class='variant-cues'><p><strong>Adds relative to baseline</strong></p><ul><li>Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts.</li><li>Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测.</li><li>Exclude no-skill summary/translation/docs.</li></ul><p><strong>Drops from baseline</strong></p><ul><li>Create and improve agent skills.</li></ul></div></div><div class='variant-card'><div class='variant-head'><h3>Winner — Current</h3><span>current</span></div><p class='variant-description'>Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.</p><div class='variant-metrics'><span>tokens 54 (+46)</span><span>dev 0 (0)</span><span>holdout 0 (0)</span></div><div class='variant-cues'><p><strong>Adds relative to baseline</strong></p><ul><li>Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts.</li><li>Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测.</li><li>Exclude no-skill summary/translation/docs.</li></ul><p><strong>Drops from baseline</strong></p><ul><li>Create and improve agent skills.</li></ul></div></div></div>
<div class="variant-grid"><div class='variant-card'><div class='variant-head'><h3>Baseline</h3><span>existing</span></div><p class='variant-description'>Create and improve agent skills.</p><div class='variant-metrics'><span>tokens 8 (0)</span><span>dev 0 (0)</span><span>holdout 0 (0)</span></div><div class='variant-cues'><p><strong>Adds relative to baseline</strong></p><ul><li>Create and improve agent skills.</li></ul><p><strong>Drops from baseline</strong></p><p class='minor'>No dropped cues.</p></div></div><div class='variant-card'><div class='variant-head'><h3>Current</h3><span>current</span></div><p class='variant-description'>Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.</p><div class='variant-metrics'><span>tokens 53 (+45)</span><span>dev 0 (0)</span><span>holdout 0 (0)</span></div><div class='variant-cues'><p><strong>Adds relative to baseline</strong></p><ul><li>Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes.</li><li>Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.</li></ul><p><strong>Drops from baseline</strong></p><ul><li>Create and improve agent skills.</li></ul></div></div><div class='variant-card'><div class='variant-head'><h3>Winner — Current</h3><span>current</span></div><p class='variant-description'>Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.</p><div class='variant-metrics'><span>tokens 53 (+45)</span><span>dev 0 (0)</span><span>holdout 0 (0)</span></div><div class='variant-cues'><p><strong>Adds relative to baseline</strong></p><ul><li>Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes.</li><li>Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.</li></ul><p><strong>Drops from baseline</strong></p><ul><li>Create and improve agent skills.</li></ul></div></div></div>
</section>
<section class="grid">
@@ -310,11 +310,11 @@ th {
<section class="grid">
<div class="panel">
<h2>Reference synthesis</h2>
<div class="direction-grid"><div class='direction-card'><h3>Official skill anatomy and context discipline</h3><p><strong>Borrow now</strong></p><ul><li>Borrow progressive disclosure: keep the entrypoint lean and move depth into references or scripts.</li></ul><p><strong>Avoid</strong></p><ul><li>Do not let packaging or platform concerns swallow the core job boundary.</li></ul></div><div class='direction-card'><h3>Hypothesis-test-learn loop</h3><p><strong>Borrow now</strong></p><ul><li>Borrow a small hypothesis-test-learn loop so the first revision is evidence-backed.</li></ul><p><strong>Avoid</strong></p><ul><li>Do not create experimental overhead that exceeds the skill&#x27;s real risk tier.</li></ul></div><div class='direction-card'><h3>Boundary-first design</h3><p><strong>Borrow now</strong></p><ul><li>Borrow the discipline of defining what the skill should not own before growing the package.</li></ul><p><strong>Avoid</strong></p><ul><li>Do not expand execution assets until route boundaries stay clean.</li></ul></div></div>
<div class="direction-grid"><div class='direction-card'><h3>Official skill anatomy and context discipline</h3><p><strong>Borrow now</strong></p><ul><li>Borrow progressive disclosure: keep the entrypoint lean and move depth into references or scripts.</li></ul><p><strong>Avoid</strong></p><ul><li>Do not let packaging or platform concerns swallow the core job boundary.</li></ul></div><div class='direction-card'><h3>Human-in-the-loop verification</h3><p><strong>Borrow now</strong></p><ul><li>Borrow a review checkpoint wherever trust matters more than raw speed.</li></ul><p><strong>Avoid</strong></p><ul><li>Do not force every skill through heavyweight review when the risk is low.</li></ul></div><div class='direction-card'><h3>Boundary-first design</h3><p><strong>Borrow now</strong></p><ul><li>Borrow the discipline of defining what the skill should not own before growing the package.</li></ul><p><strong>Avoid</strong></p><ul><li>Do not expand execution assets until route boundaries stay clean.</li></ul></div></div>
</div>
<div class="panel">
<h2>Borrow now</h2>
<ul><li>Borrow progressive disclosure: keep the entrypoint lean and move depth into references or scripts.</li><li>Borrow a small hypothesis-test-learn loop so the first revision is evidence-backed.</li><li>Borrow the discipline of defining what the skill should not own before growing the package.</li><li>Borrow the way it turns a messy workflow into a repeatable operating path.</li></ul>
<ul><li>Borrow progressive disclosure: keep the entrypoint lean and move depth into references or scripts.</li><li>Borrow a review checkpoint wherever trust matters more than raw speed.</li><li>Borrow the discipline of defining what the skill should not own before growing the package.</li><li>Borrow the way it turns a messy workflow into a repeatable operating path.</li></ul>
<p class="minor">Use the recommendation by default. Only surface the underlying benchmark tradeoffs when intent is uncertain or a real design conflict needs a deliberate call.</p>
</div>
</section>
+763 -986
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -2,7 +2,7 @@
"schema_version": "1.0",
"ok": true,
"skill_dir": ".",
"source": "tests/tmp_review_studio/empty_review_annotations_input.json",
"source": "reports/review_annotations_input.json",
"summary": {
"annotation_count": 0,
"open_count": 0,
+2 -2
View File
@@ -2,7 +2,7 @@
"schema_version": "1.0",
"ok": true,
"skill_dir": ".",
"generated_at": "2026-06-13",
"generated_at": "2026-06-17",
"summary": {
"waiver_count": 0,
"active_count": 0,
@@ -92,7 +92,7 @@
"Reviewer links output_review_adjudication or output_execution evidence."
],
"suggested_evidence": "reports/output_review_adjudication.md",
"suggested_command": "python3 scripts/yao.py review-waivers . --add-waiver --gate-key output-lab --reviewer \"<reviewer>\" --reason \"Output Lab has pending human/provider evidence; accepted only for this bounded review scope.\" --expires-at 2027-06-13 --evidence reports/output_review_adjudication.md",
"suggested_command": "python3 scripts/yao.py review-waivers . --add-waiver --gate-key output-lab --reviewer \"<reviewer>\" --reason \"Output Lab has pending human/provider evidence; accepted only for this bounded review scope.\" --expires-at 2027-06-17 --evidence reports/output_review_adjudication.md",
"world_class_boundary": "Does not count as provider, human, or public world-class completion evidence."
},
{
+1 -1
View File
@@ -38,7 +38,7 @@
- waiver allowed: `true`
- risk: review pending 5; model-executed 10; output failures 0
- evidence: `reports/output_review_adjudication.md`
- verification: `python3 scripts/yao.py review-waivers . --add-waiver --gate-key output-lab --reviewer "<reviewer>" --reason "Output Lab has pending human/provider evidence; accepted only for this bounded review scope." --expires-at 2027-06-13 --evidence reports/output_review_adjudication.md`
- verification: `python3 scripts/yao.py review-waivers . --add-waiver --gate-key output-lab --reviewer "<reviewer>" --reason "Output Lab has pending human/provider evidence; accepted only for this bounded review scope." --expires-at 2027-06-17 --evidence reports/output_review_adjudication.md`
- world-class boundary: Does not count as provider, human, or public world-class completion evidence.
#### Required Review
+37 -40
View File
@@ -15,7 +15,7 @@
"correct_count": 3,
"precision": 1.0,
"recall": 1.0,
"average_margin": 0.644
"average_margin": 0.701
},
"team-frontend-review": {
"expected_count": 3,
@@ -31,7 +31,7 @@
"correct_count": 3,
"precision": 1.0,
"recall": 1.0,
"average_margin": 0.709
"average_margin": 0.586
},
"no_route": {
"expected_count": 4,
@@ -77,18 +77,18 @@
"expected_route": "yao-meta-skill",
"predicted_route": "yao-meta-skill",
"correct": true,
"margin": 0.681,
"margin": 1.0,
"ambiguous": false,
"ranked_routes": [
{
"name": "yao-meta-skill",
"score": 0.681,
"score": 1.0,
"passed_threshold": true,
"threshold": 0.33,
"matched_desired_concepts": [
"eval_optimize",
"iterate_existing_skill",
"reuse_package",
"team_operationalize",
"transform_workflow"
],
"matched_negative_concepts": []
@@ -117,17 +117,16 @@
"expected_route": "yao-meta-skill",
"predicted_route": "yao-meta-skill",
"correct": true,
"margin": 0.51,
"margin": 0.661,
"ambiguous": false,
"ranked_routes": [
{
"name": "yao-meta-skill",
"score": 0.51,
"score": 0.661,
"passed_threshold": true,
"threshold": 0.33,
"matched_desired_concepts": [
"eval_optimize",
"iterate_existing_skill",
"reuse_package"
],
"matched_negative_concepts": []
@@ -156,19 +155,16 @@
"expected_route": "yao-meta-skill",
"predicted_route": "yao-meta-skill",
"correct": true,
"margin": 0.74,
"margin": 0.441,
"ambiguous": false,
"ranked_routes": [
{
"name": "yao-meta-skill",
"score": 0.74,
"score": 0.441,
"passed_threshold": true,
"threshold": 0.33,
"matched_desired_concepts": [
"build_skill",
"multi_asset",
"reuse_package",
"transform_workflow"
"reuse_package"
],
"matched_negative_concepts": []
},
@@ -216,18 +212,18 @@
"matched_negative_concepts": []
},
{
"name": "governed-incident-command",
"name": "yao-meta-skill",
"score": 0.012,
"passed_threshold": false,
"threshold": 0.48,
"threshold": 0.33,
"matched_desired_concepts": [],
"matched_negative_concepts": []
},
{
"name": "yao-meta-skill",
"score": 0.006,
"name": "governed-incident-command",
"score": 0.012,
"passed_threshold": false,
"threshold": 0.33,
"threshold": 0.48,
"matched_desired_concepts": [],
"matched_negative_concepts": []
}
@@ -256,18 +252,18 @@
"matched_negative_concepts": []
},
{
"name": "governed-incident-command",
"name": "yao-meta-skill",
"score": 0.008,
"passed_threshold": false,
"threshold": 0.48,
"threshold": 0.33,
"matched_desired_concepts": [],
"matched_negative_concepts": []
},
{
"name": "yao-meta-skill",
"score": 0.004,
"name": "governed-incident-command",
"score": 0.008,
"passed_threshold": false,
"threshold": 0.33,
"threshold": 0.48,
"matched_desired_concepts": [],
"matched_negative_concepts": []
}
@@ -297,7 +293,7 @@
},
{
"name": "yao-meta-skill",
"score": 0.006,
"score": 0.012,
"passed_threshold": false,
"threshold": 0.33,
"matched_desired_concepts": [],
@@ -336,18 +332,18 @@
"matched_negative_concepts": []
},
{
"name": "team-frontend-review",
"score": 0.011,
"name": "yao-meta-skill",
"score": 0.016,
"passed_threshold": false,
"threshold": 0.48,
"threshold": 0.33,
"matched_desired_concepts": [],
"matched_negative_concepts": []
},
{
"name": "yao-meta-skill",
"score": 0.005,
"name": "team-frontend-review",
"score": 0.011,
"passed_threshold": false,
"threshold": 0.33,
"threshold": 0.48,
"matched_desired_concepts": [],
"matched_negative_concepts": []
}
@@ -375,7 +371,7 @@
},
{
"name": "yao-meta-skill",
"score": 0.179,
"score": 0.328,
"passed_threshold": false,
"threshold": 0.33,
"matched_desired_concepts": [
@@ -399,7 +395,7 @@
"expected_route": "governed-incident-command",
"predicted_route": "governed-incident-command",
"correct": true,
"margin": 0.621,
"margin": 0.252,
"ambiguous": false,
"ranked_routes": [
{
@@ -417,11 +413,12 @@
},
{
"name": "yao-meta-skill",
"score": 0.379,
"score": 0.748,
"passed_threshold": true,
"threshold": 0.33,
"matched_desired_concepts": [
"reuse_package",
"team_operationalize",
"transform_workflow"
],
"matched_negative_concepts": []
@@ -485,18 +482,18 @@
"ambiguous": false,
"ranked_routes": [
{
"name": "governed-incident-command",
"name": "yao-meta-skill",
"score": 0.008,
"passed_threshold": false,
"threshold": 0.48,
"threshold": 0.33,
"matched_desired_concepts": [],
"matched_negative_concepts": []
},
{
"name": "yao-meta-skill",
"score": 0.0,
"name": "governed-incident-command",
"score": 0.008,
"passed_threshold": false,
"threshold": 0.33,
"threshold": 0.48,
"matched_desired_concepts": [],
"matched_negative_concepts": []
},
@@ -525,7 +522,7 @@
"ranked_routes": [
{
"name": "yao-meta-skill",
"score": 0.016,
"score": 0.024,
"passed_threshold": false,
"threshold": 0.33,
"matched_desired_concepts": [],
+2 -2
View File
@@ -9,9 +9,9 @@
| Route | Expected | Predicted | Precision | Recall | Avg Margin |
| --- | ---: | ---: | ---: | ---: | ---: |
| `yao-meta-skill` | 3 | 3 | 1.0 | 1.0 | 0.644 |
| `yao-meta-skill` | 3 | 3 | 1.0 | 1.0 | 0.701 |
| `team-frontend-review` | 3 | 3 | 1.0 | 1.0 | 0.805 |
| `governed-incident-command` | 3 | 3 | 1.0 | 1.0 | 0.709 |
| `governed-incident-command` | 3 | 3 | 1.0 | 1.0 | 0.586 |
| `no_route` | 4 | 4 | 1.0 | 1.0 | - |
## Confusion Matrix
+8 -46
View File
@@ -2,9 +2,9 @@
"ok": true,
"skill_dir": ".",
"summary": {
"scanned_files": 247,
"script_count": 155,
"internal_module_count": 69,
"scanned_files": 245,
"script_count": 153,
"internal_module_count": 67,
"secret_findings": 0,
"dependency_files": [
"requirements-ci.txt"
@@ -12,7 +12,7 @@
"network_script_count": 3,
"network_policy_covered_count": 3,
"network_policy_missing_count": 0,
"file_write_script_count": 74,
"file_write_script_count": 73,
"permission_required_count": 3,
"permission_approved_count": 3,
"permission_missing_count": 0,
@@ -22,8 +22,8 @@
"help_smoke_failed_count": 0,
"interactive_script_count": 0,
"package_hash_scope": "source-contract-without-generated-reports",
"package_hash_file_count": 247,
"package_sha256": "db71157184dc649ee72dfcaf399204d44a366d942393d055571e0137d42c9f7c"
"package_hash_file_count": 245,
"package_sha256": "5a99ef3133b0148cd5bbc1cd85fad4830bf34ca2bbac709f1e1fea2f810b1257"
},
"failures": [],
"warnings": [],
@@ -2092,20 +2092,6 @@
"network_urls": [],
"network_hosts": []
},
{
"path": "scripts/yao_cli_operator_commands.py",
"interface": "internal-module",
"interface_declared": true,
"interface_reason": "Imported by yao.py for operator-facing install, localized docs, and PR review diagnostics.",
"has_argparse": true,
"has_main_guard": false,
"uses_input": false,
"uses_network": false,
"uses_file_write": true,
"uses_subprocess": true,
"network_urls": [],
"network_hosts": []
},
{
"path": "scripts/yao_cli_output_commands.py",
"interface": "internal-module",
@@ -2162,20 +2148,6 @@
"network_urls": [],
"network_hosts": []
},
{
"path": "scripts/yao_cli_parser_operator.py",
"interface": "internal-module",
"interface_declared": true,
"interface_reason": "Imported by yao_cli_parser.py to keep operator UX command declarations out of the main parser module.",
"has_argparse": true,
"has_main_guard": false,
"uses_input": false,
"uses_network": false,
"uses_file_write": false,
"uses_subprocess": false,
"network_urls": [],
"network_hosts": []
},
{
"path": "scripts/yao_cli_report_commands.py",
"interface": "internal-module",
@@ -2253,7 +2225,7 @@
"checked_count": 86,
"passed_count": 86,
"failed_count": 0,
"skipped_count": 69,
"skipped_count": 67,
"failed_scripts": [],
"results": [
{
@@ -3358,10 +3330,6 @@
"path": "scripts/yao_cli_distribution_commands.py",
"reason": "internal module"
},
{
"path": "scripts/yao_cli_operator_commands.py",
"reason": "internal module"
},
{
"path": "scripts/yao_cli_output_commands.py",
"reason": "internal module"
@@ -3378,10 +3346,6 @@
"path": "scripts/yao_cli_parser_operations.py",
"reason": "internal module"
},
{
"path": "scripts/yao_cli_parser_operator.py",
"reason": "internal module"
},
{
"path": "scripts/yao_cli_report_commands.py",
"reason": "internal module"
@@ -3520,8 +3484,7 @@
"scripts/telemetry_native_host.py",
"scripts/trust_check.py",
"scripts/upgrade_check.py",
"scripts/verify_package.py",
"scripts/yao_cli_operator_commands.py"
"scripts/verify_package.py"
],
"reviewer": "Yao Team",
"scope": "Local generated reports, registry metadata, temporary test outputs, and package artifacts under the skill workspace.",
@@ -3555,7 +3518,6 @@
"scripts/sync_local_install.py",
"scripts/trust_check.py",
"scripts/yao.py",
"scripts/yao_cli_operator_commands.py",
"scripts/yao_cli_runtime.py"
],
"reviewer": "Yao Team",
+6 -8
View File
@@ -1,22 +1,22 @@
# Security Trust Report
- OK: `True`
- Scanned files: `247`
- Scripts: `155`
- Internal script modules: `69`
- Scanned files: `245`
- Scripts: `153`
- Internal script modules: `67`
- Secret findings: `0`
- Network-capable scripts: `3`
- Network policy covered scripts: `3`
- Network policy missing scripts: `0`
- File-write scripts: `74`
- File-write scripts: `73`
- Permission approvals: `3 / 3`
- Permission approval gaps: `0`
- CLI help smoke checked: `86`
- CLI help smoke failures: `0`
- Interactive scripts: `0`
- Package hash scope: `source-contract-without-generated-reports`
- Package hash files: `247`
- Package SHA256: `db71157184dc649ee72dfcaf399204d44a366d942393d055571e0137d42c9f7c`
- Package hash files: `245`
- Package SHA256: `5a99ef3133b0148cd5bbc1cd85fad4830bf34ca2bbac709f1e1fea2f810b1257`
## Failures
@@ -208,12 +208,10 @@
| scripts/yao_cli_config.py | internal-module | True | False | False | False | False | False | False | Imported by yao.py for CLI target maps and side-effect-free shaping helpers. |
| scripts/yao_cli_create_commands.py | internal-module | True | True | False | False | False | False | False | Imported by yao.py to keep skill creation and quickstart command handlers out of the CLI orchestrator. |
| scripts/yao_cli_distribution_commands.py | internal-module | True | True | False | False | False | False | False | Imported by yao.py to keep distribution and runtime gate handlers outside the thin CLI orchestrator. |
| scripts/yao_cli_operator_commands.py | internal-module | True | True | False | False | False | True | True | Imported by yao.py for operator-facing install, localized docs, and PR review diagnostics. |
| scripts/yao_cli_output_commands.py | internal-module | True | True | False | False | False | False | False | Imported by yao.py to keep output evaluation and review handlers outside the thin CLI orchestrator. |
| scripts/yao_cli_parser.py | internal-module | True | True | False | False | False | False | False | Imported by yao.py to keep CLI parser declarations separate from command orchestration. |
| scripts/yao_cli_parser_evidence.py | internal-module | True | True | False | False | False | False | False | Imported by yao_cli_parser.py to keep evidence command declarations out of the main parser module. |
| scripts/yao_cli_parser_operations.py | internal-module | True | True | False | False | False | False | False | Imported by yao_cli_parser.py to keep SkillOps, telemetry, and review-loop command declarations out of the main parser module. |
| scripts/yao_cli_parser_operator.py | internal-module | True | True | False | False | False | False | False | Imported by yao_cli_parser.py to keep operator UX command declarations out of the main parser module. |
| scripts/yao_cli_report_commands.py | internal-module | True | True | False | False | False | False | False | Imported by yao.py to keep report and evidence command handlers out of the CLI orchestrator. |
| scripts/yao_cli_runtime.py | internal-module | True | False | False | False | False | False | True | Imported by yao.py and command modules for shared subprocess execution and JSON payload parsing. |
| scripts/yao_cli_telemetry.py | internal-module | True | True | False | False | False | False | False | Imported by yao.py to record opt-in metadata-only CLI run telemetry. |
+12 -12
View File
@@ -761,7 +761,7 @@
<p class="eyebrow"><span data-lang="zh-CN">YAO Skill 生成审计报告</span><span data-lang="en">YAO Skill Generation Audit</span></p>
<p class="slug">yao-meta-skill</p>
<h1 id="report-title"><span data-lang="zh-CN">技能审计报告</span><span data-lang="en">Yao Meta Skill Audit Report</span></h1>
<p class="lead"><span data-lang="zh-CN">这份报告默认使用中文简体,把新 Skill 的定位、指标、原理、契约、质量、风险、资产和迭代路线整理为一份可审计的 HTML 报告。</span><span data-lang="en">Skill-specific source text is authored in Chinese; switch to Simplified Chinese for the exact wording.</span></p>
<p class="lead"><span data-lang="zh-CN">这份报告默认使用中文简体,把新 Skill 的定位、指标、原理、契约、质量、风险、资产和迭代路线整理为一份可审计的 HTML 报告。</span><span data-lang="en">Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.</span></p>
<div class="hero-meta"><span><span data-lang="zh-CN">技能名称:yao-meta-skill</span><span data-lang="en">Skill name: yao-meta-skill</span></span><span><span data-lang="zh-CN">成熟度:治理</span><span data-lang="en">Maturity: governed</span></span><span><span data-lang="zh-CN">格式:Agent Skills</span><span data-lang="en">Format: agent-skills</span></span><span><span data-lang="zh-CN">更新时间:2026-03-31</span><span data-lang="en">Updated: 2026-03-31</span></span></div>
<div class="badges"><span><span data-lang="zh-CN">openai</span><span data-lang="en">openai</span></span><span><span data-lang="zh-CN">claude</span><span data-lang="en">claude</span></span><span><span data-lang="zh-CN">generic</span><span data-lang="en">generic</span></span><span><span data-lang="zh-CN">vscode</span><span data-lang="en">vscode</span></span></div>
</div>
@@ -770,7 +770,7 @@
<ul class="list"><li><span data-lang="zh-CN">把一次性经验沉淀为可复用、可评估、可迁移的 Skill 包体。</span><span data-lang="en">Turn one-off experience into a reusable, evaluable, and portable skill package.</span></li><li><span data-lang="zh-CN">Skill 作者、复用团队和后续 reviewer。</span><span data-lang="en">Skill authors, reuse teams, and later reviewers.</span></li><li><span data-lang="zh-CN">创建完成后建议先打开 reports/skill-interpretation.html,再继续扩展包体。</span><span data-lang="en">After creation, open reports/skill-interpretation.html before expanding the package further.</span></li></ul>
</aside>
</div>
<div class="score-strip" aria-label="报告关键指标"><article class='score-chip'><span><span data-lang="zh-CN">完整度</span><span data-lang="en">Completeness</span></span><strong>100</strong><i style='--score:100%'></i><small><span data-lang="zh-CN">SKILL.md 已存在,是 Skill 的入口。</span><span data-lang="en">SKILL.md exists and acts as the skill entrypoint.</span></small></article><article class='score-chip'><span><span data-lang="zh-CN">触发清晰</span><span data-lang="en">Trigger clarity</span></span><strong>100</strong><i style='--score:100%'></i><small><span data-lang="zh-CN">frontmatter description 已存在,具备基础路由面。</span><span data-lang="en">The frontmatter description exists, giving the skill a basic routing surface.</span></small></article><article class='score-chip'><span><span data-lang="zh-CN">证据充分</span><span data-lang="en">Evidence depth</span></span><strong>100</strong><i style='--score:100%'></i><small><span data-lang="zh-CN">已生成 20 / 20 类报告证据。</span><span data-lang="en">Generated 20 / 20 evidence report types.</span></small></article><article class='score-chip'><span><span data-lang="zh-CN">上下文成本</span><span data-lang="en">Context cost</span></span><strong>42</strong><i style='--score:42%'></i><small><span data-lang="zh-CN">入口约 314 个词/字,references 约 16934 个词/字。</span><span data-lang="en">Entrypoint is about 314 words/characters; references are about 16934.</span></small></article></div>
<div class="score-strip" aria-label="报告关键指标"><article class='score-chip'><span><span data-lang="zh-CN">完整度</span><span data-lang="en">Completeness</span></span><strong>100</strong><i style='--score:100%'></i><small><span data-lang="zh-CN">SKILL.md 已存在,是 Skill 的入口。</span><span data-lang="en">SKILL.md exists and acts as the skill entrypoint.</span></small></article><article class='score-chip'><span><span data-lang="zh-CN">触发清晰</span><span data-lang="en">Trigger clarity</span></span><strong>100</strong><i style='--score:100%'></i><small><span data-lang="zh-CN">frontmatter description 已存在,具备基础路由面。</span><span data-lang="en">The frontmatter description exists, giving the skill a basic routing surface.</span></small></article><article class='score-chip'><span><span data-lang="zh-CN">证据充分</span><span data-lang="en">Evidence depth</span></span><strong>100</strong><i style='--score:100%'></i><small><span data-lang="zh-CN">已生成 20 / 20 类报告证据。</span><span data-lang="en">Generated 20 / 20 evidence report types.</span></small></article><article class='score-chip'><span><span data-lang="zh-CN">上下文成本</span><span data-lang="en">Context cost</span></span><strong>42</strong><i style='--score:42%'></i><small><span data-lang="zh-CN">入口约 339 个词/字,references 约 16934 个词/字。</span><span data-lang="en">Entrypoint is about 339 words/characters; references are about 16934.</span></small></article></div>
</section>
<section id="overview">
@@ -782,7 +782,7 @@
<div class="two-col">
<article class="panel">
<h3><span data-lang="zh-CN">作用定位</span><span data-lang="en">Role</span></h3>
<ul class="list"><li><span data-lang="zh-CN">Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.</span><span data-lang="en">Skill-specific source text is authored in Chinese; switch to Simplified Chinese for the exact wording.</span></li><li><span data-lang="zh-CN">把一次性经验沉淀为可复用、可评估、可迁移的 Skill 包体。</span><span data-lang="en">Turn one-off experience into a reusable, evaluable, and portable skill package.</span></li><li><span data-lang="zh-CN">交付结果:SKILL.md, agents/interface.yaml, skill-ir/examples/yao-meta-skill.json, reports/compiled_targets.md, reports/output_quality_scorecard.md, reports/output_execution_runs.md, reports/output_blind_review_pack.md, reports/output_review_kit.md, reports/output_review_adjudication.md, reports/benchmark_reproducibility.md, reports/output_blind_answer_key.json, reports/conformance_matrix.md, reports/security_trust_report.md, reports/runtime_permission_probes.md, reports/skill_atlas.html, reports/registry_audit.md, reports/package_verification.md, reports/install_simulation.md, reports/upgrade_check.md, reports/adoption_drift_report.md, reports/review_waivers.md, reports/world_class_evidence_plan.md, reports/world_class_evidence_ledger.md, reports/review_annotations.md, reports/review-studio.html, reports/skill-interpretation.html, reports/skill-overview.html, reports/skill-interpretation.json</span><span data-lang="en">Deliverables: SKILL.md, agents/interface.yaml, skill-ir/examples/yao-meta-skill.json, reports/compiled_targets.md, reports/output_quality_scorecard.md, reports/output_execution_runs.md, reports/output_blind_review_pack.md, reports/output_review_kit.md, reports/output_review_adjudication.md, reports/benchmark_reproducibility.md, reports/output_blind_answer_key.json, reports/conformance_matrix.md, reports/security_trust_report.md, reports/runtime_permission_probes.md, reports/skill_atlas.html, reports/registry_audit.md, reports/package_verification.md, reports/install_simulation.md, reports/upgrade_check.md, reports/adoption_drift_report.md, reports/review_waivers.md, reports/world_class_evidence_plan.md, reports/world_class_evidence_ledger.md, reports/review_annotations.md, reports/review-studio.html, reports/skill-interpretation.html, reports/skill-overview.html, reports/skill-interpretation.json</span></li></ul>
<ul class="list"><li><span data-lang="zh-CN">原始说明可切换到英文查看;默认中文报告保留结论与结构说明。</span><span data-lang="en">Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.</span></li><li><span data-lang="zh-CN">把一次性经验沉淀为可复用、可评估、可迁移的 Skill 包体。</span><span data-lang="en">Turn one-off experience into a reusable, evaluable, and portable skill package.</span></li><li><span data-lang="zh-CN">交付结果:SKILL.md, agents/interface.yaml, skill-ir/examples/yao-meta-skill.json, reports/compiled_targets.md, reports/output_quality_scorecard.md, reports/output_execution_runs.md, reports/output_blind_review_pack.md, reports/output_review_kit.md, reports/output_review_adjudication.md, reports/benchmark_reproducibility.md, reports/output_blind_answer_key.json, reports/conformance_matrix.md, reports/security_trust_report.md, reports/runtime_permission_probes.md, reports/skill_atlas.html, reports/registry_audit.md, reports/package_verification.md, reports/install_simulation.md, reports/upgrade_check.md, reports/adoption_drift_report.md, reports/review_waivers.md, reports/world_class_evidence_plan.md, reports/world_class_evidence_ledger.md, reports/review_annotations.md, reports/review-studio.html, reports/skill-interpretation.html, reports/skill-overview.html, reports/skill-interpretation.json</span><span data-lang="en">Deliverables: SKILL.md, agents/interface.yaml, skill-ir/examples/yao-meta-skill.json, reports/compiled_targets.md, reports/output_quality_scorecard.md, reports/output_execution_runs.md, reports/output_blind_review_pack.md, reports/output_review_kit.md, reports/output_review_adjudication.md, reports/benchmark_reproducibility.md, reports/output_blind_answer_key.json, reports/conformance_matrix.md, reports/security_trust_report.md, reports/runtime_permission_probes.md, reports/skill_atlas.html, reports/registry_audit.md, reports/package_verification.md, reports/install_simulation.md, reports/upgrade_check.md, reports/adoption_drift_report.md, reports/review_waivers.md, reports/world_class_evidence_plan.md, reports/world_class_evidence_ledger.md, reports/review_annotations.md, reports/review-studio.html, reports/skill-interpretation.html, reports/skill-overview.html, reports/skill-interpretation.json</span></li></ul>
</article>
<figure class="chart-figure" data-chart="flow"><svg viewBox="0 0 620 170" role="img" aria-label="交付流程"><text data-lang="zh-CN" x="20" y="28" class="chart-title">交付流程</text><text data-lang="en" x="20" y="28" class="chart-title">Delivery Flow</text><path d="M188 93 H248 M398 93 H458" class="chart-line"/><g><rect x="38" y="56" width="150" height="74" rx="8" fill="#F6F8FB" stroke="#e8e6dc"/><text data-lang="zh-CN" x="113" y="99" text-anchor="middle">输入材料</text><text data-lang="en" x="113" y="99" text-anchor="middle">Input material</text></g><g><rect x="248" y="56" width="150" height="74" rx="8" fill="#F6F8FB" stroke="#e8e6dc"/><text data-lang="zh-CN" x="323" y="99" text-anchor="middle">Skill 包体</text><text data-lang="en" x="323" y="99" text-anchor="middle">Skill package</text></g><g><rect x="458" y="56" width="150" height="74" rx="8" fill="#F6F8FB" stroke="#e8e6dc"/><text data-lang="zh-CN" x="533" y="99" text-anchor="middle">可复用能力</text><text data-lang="en" x="533" y="99" text-anchor="middle">Reusable capability</text></g></svg><figcaption><span data-lang="zh-CN">交付流程把用户输入、生成的包体和可复用能力放在一条线上。</span><span data-lang="en">The delivery flow places user input, generated package, and reusable capability on one path.</span></figcaption></figure>
</div>
@@ -807,12 +807,12 @@
<article class="panel metrics-note metrics-summary-panel">
<h3><span data-lang="zh-CN">成熟度条</span><span data-lang="en">Maturity Bar</span></h3>
<p><span data-lang="zh-CN">这里把每个指标压缩为状态、分数和第一条证据,先给出整体判断,再进入下方明细。</span><span data-lang="en">This compresses each metric into status, score, and the first evidence item before the detailed cards below.</span></p>
<ol class='metric-summary-list'><li><span class='metric-status'><span data-lang="zh-CN">稳定</span><span data-lang="en">Stable</span></span><b><span data-lang="zh-CN">完整度</span><span data-lang="en">Completeness</span></b><em>100</em><small><span data-lang="zh-CN">SKILL.md 已存在,是 Skill 的入口。</span><span data-lang="en">SKILL.md exists and acts as the skill entrypoint.</span></small></li><li><span class='metric-status'><span data-lang="zh-CN">稳定</span><span data-lang="en">Stable</span></span><b><span data-lang="zh-CN">触发清晰</span><span data-lang="en">Trigger clarity</span></b><em>100</em><small><span data-lang="zh-CN">frontmatter description 已存在,具备基础路由面。</span><span data-lang="en">The frontmatter description exists, giving the skill a basic routing surface.</span></small></li><li><span class='metric-status'><span data-lang="zh-CN">稳定</span><span data-lang="en">Stable</span></span><b><span data-lang="zh-CN">证据充分</span><span data-lang="en">Evidence depth</span></b><em>100</em><small><span data-lang="zh-CN">已生成 20 / 20 类报告证据。</span><span data-lang="en">Generated 20 / 20 evidence report types.</span></small></li><li><span class='metric-status'><span data-lang="zh-CN">稳定</span><span data-lang="en">Stable</span></span><b><span data-lang="zh-CN">可维护性</span><span data-lang="en">Maintainability</span></b><em>100</em><small><span data-lang="zh-CN">SKILL.md 约 314 个词/字。</span><span data-lang="en">SKILL.md is about 314 words/characters.</span></small></li><li><span class='metric-status'><span data-lang="zh-CN">稳定</span><span data-lang="en">Stable</span></span><b><span data-lang="zh-CN">可迁移性</span><span data-lang="en">Portability</span></b><em>100</em><small><span data-lang="zh-CN">agents/interface.yaml 已存在。</span><span data-lang="en">agents/interface.yaml exists.</span></small></li><li><span class='metric-status'><span data-lang="zh-CN">关注</span><span data-lang="en">Watch</span></span><b><span data-lang="zh-CN">上下文成本</span><span data-lang="en">Context cost</span></b><em>42</em><small><span data-lang="zh-CN">入口约 314 个词/字,references 约 16934 个词/字。</span><span data-lang="en">Entrypoint is about 314 words/characters; references are about 16934.</span></small></li></ol>
<ol class='metric-summary-list'><li><span class='metric-status'><span data-lang="zh-CN">稳定</span><span data-lang="en">Stable</span></span><b><span data-lang="zh-CN">完整度</span><span data-lang="en">Completeness</span></b><em>100</em><small><span data-lang="zh-CN">SKILL.md 已存在,是 Skill 的入口。</span><span data-lang="en">SKILL.md exists and acts as the skill entrypoint.</span></small></li><li><span class='metric-status'><span data-lang="zh-CN">稳定</span><span data-lang="en">Stable</span></span><b><span data-lang="zh-CN">触发清晰</span><span data-lang="en">Trigger clarity</span></b><em>100</em><small><span data-lang="zh-CN">frontmatter description 已存在,具备基础路由面。</span><span data-lang="en">The frontmatter description exists, giving the skill a basic routing surface.</span></small></li><li><span class='metric-status'><span data-lang="zh-CN">稳定</span><span data-lang="en">Stable</span></span><b><span data-lang="zh-CN">证据充分</span><span data-lang="en">Evidence depth</span></b><em>100</em><small><span data-lang="zh-CN">已生成 20 / 20 类报告证据。</span><span data-lang="en">Generated 20 / 20 evidence report types.</span></small></li><li><span class='metric-status'><span data-lang="zh-CN">稳定</span><span data-lang="en">Stable</span></span><b><span data-lang="zh-CN">可维护性</span><span data-lang="en">Maintainability</span></b><em>100</em><small><span data-lang="zh-CN">SKILL.md 约 339 个词/字。</span><span data-lang="en">SKILL.md is about 339 words/characters.</span></small></li><li><span class='metric-status'><span data-lang="zh-CN">稳定</span><span data-lang="en">Stable</span></span><b><span data-lang="zh-CN">可迁移性</span><span data-lang="en">Portability</span></b><em>100</em><small><span data-lang="zh-CN">agents/interface.yaml 已存在。</span><span data-lang="en">agents/interface.yaml exists.</span></small></li><li><span class='metric-status'><span data-lang="zh-CN">关注</span><span data-lang="en">Watch</span></span><b><span data-lang="zh-CN">上下文成本</span><span data-lang="en">Context cost</span></b><em>42</em><small><span data-lang="zh-CN">入口约 339 个词/字,references 约 16934 个词/字。</span><span data-lang="en">Entrypoint is about 339 words/characters; references are about 16934.</span></small></li></ol>
</article>
</div>
<div class="metric-detail-section">
<div class="detail-section-kicker"><span data-lang="zh-CN">指标明细</span><span data-lang="en">Metric Details</span></div>
<div class="metric-grid metric-detail-grid"><article class='metric-card'><div class='metric-card-head'><span class='metric-label'><span data-lang="zh-CN">完整度</span><span data-lang="en">Completeness</span></span><strong>100</strong></div><div class='metric-card-body'><ul class="compact-list"><li><span data-lang="zh-CN">SKILL.md 已存在,是 Skill 的入口。</span><span data-lang="en">SKILL.md exists and acts as the skill entrypoint.</span></li><li><span data-lang="zh-CN">README.md 已存在,便于人工阅读。</span><span data-lang="en">README.md exists for human-readable usage.</span></li><li><span data-lang="zh-CN">agents/interface.yaml 已存在,便于跨平台适配。</span><span data-lang="en">agents/interface.yaml exists for cross-platform adaptation.</span></li></ul></div></article><article class='metric-card'><div class='metric-card-head'><span class='metric-label'><span data-lang="zh-CN">触发清晰</span><span data-lang="en">Trigger clarity</span></span><strong>100</strong></div><div class='metric-card-body'><ul class="compact-list"><li><span data-lang="zh-CN">frontmatter description 已存在,具备基础路由面。</span><span data-lang="en">The frontmatter description exists, giving the skill a basic routing surface.</span></li><li><span data-lang="zh-CN">description 有足够长度说明任务边界。</span><span data-lang="en">The description is long enough to explain the task boundary.</span></li><li><span data-lang="zh-CN">description 已包含使用场景或排除边界信号。</span><span data-lang="en">The description includes usage-scenario or exclusion-boundary signals.</span></li></ul></div></article><article class='metric-card'><div class='metric-card-head'><span class='metric-label'><span data-lang="zh-CN">证据充分</span><span data-lang="en">Evidence depth</span></span><strong>100</strong></div><div class='metric-card-body'><ul class="compact-list"><li><span data-lang="zh-CN">已生成 20 / 20 类报告证据。</span><span data-lang="en">Generated 20 / 20 evidence report types.</span></li><li><span data-lang="zh-CN">skill-ir.json 已存在。</span><span data-lang="en">skill-ir.json exists.</span></li><li><span data-lang="zh-CN">compiled_targets.json 已存在。</span><span data-lang="en">compiled_targets.json exists.</span></li></ul></div></article><article class='metric-card'><div class='metric-card-head'><span class='metric-label'><span data-lang="zh-CN">可维护性</span><span data-lang="en">Maintainability</span></span><strong>100</strong></div><div class='metric-card-body'><ul class="compact-list"><li><span data-lang="zh-CN">SKILL.md 约 314 个词/字。</span><span data-lang="en">SKILL.md is about 314 words/characters.</span></li><li><span data-lang="zh-CN">入口文件保持克制,可维护性较好。</span><span data-lang="en">The entrypoint stays restrained, which supports maintainability.</span></li><li><span data-lang="zh-CN">references/ 已承载扩展指导。</span><span data-lang="en">references/ carries extended guidance.</span></li></ul></div></article><article class='metric-card'><div class='metric-card-head'><span class='metric-label'><span data-lang="zh-CN">可迁移性</span><span data-lang="en">Portability</span></span><strong>100</strong></div><div class='metric-card-body'><ul class="compact-list"><li><span data-lang="zh-CN">agents/interface.yaml 已存在。</span><span data-lang="en">agents/interface.yaml exists.</span></li><li><span data-lang="zh-CN">manifest.json 已存在。</span><span data-lang="en">manifest.json exists.</span></li><li><span data-lang="zh-CN">目标平台或 adapter target 已声明。</span><span data-lang="en">Target platforms or adapter targets are declared.</span></li></ul></div></article><article class='metric-card'><div class='metric-card-head'><span class='metric-label'><span data-lang="zh-CN">上下文成本</span><span data-lang="en">Context cost</span></span><strong>42</strong></div><div class='metric-card-body'><ul class="compact-list"><li><span data-lang="zh-CN">入口约 314 个词/字,references 约 16934 个词/字。</span><span data-lang="en">Entrypoint is about 314 words/characters; references are about 16934.</span></li><li><span data-lang="zh-CN">分数越高代表上下文成本越低。</span><span data-lang="en">A higher score means lower context cost.</span></li><li><span data-lang="zh-CN">上下文成本偏高,建议压缩入口或拆分 references。</span><span data-lang="en">Context cost is high; compress the entrypoint or split references further.</span></li></ul></div></article></div>
<div class="metric-grid metric-detail-grid"><article class='metric-card'><div class='metric-card-head'><span class='metric-label'><span data-lang="zh-CN">完整度</span><span data-lang="en">Completeness</span></span><strong>100</strong></div><div class='metric-card-body'><ul class="compact-list"><li><span data-lang="zh-CN">SKILL.md 已存在,是 Skill 的入口。</span><span data-lang="en">SKILL.md exists and acts as the skill entrypoint.</span></li><li><span data-lang="zh-CN">README.md 已存在,便于人工阅读。</span><span data-lang="en">README.md exists for human-readable usage.</span></li><li><span data-lang="zh-CN">agents/interface.yaml 已存在,便于跨平台适配。</span><span data-lang="en">agents/interface.yaml exists for cross-platform adaptation.</span></li></ul></div></article><article class='metric-card'><div class='metric-card-head'><span class='metric-label'><span data-lang="zh-CN">触发清晰</span><span data-lang="en">Trigger clarity</span></span><strong>100</strong></div><div class='metric-card-body'><ul class="compact-list"><li><span data-lang="zh-CN">frontmatter description 已存在,具备基础路由面。</span><span data-lang="en">The frontmatter description exists, giving the skill a basic routing surface.</span></li><li><span data-lang="zh-CN">description 有足够长度说明任务边界。</span><span data-lang="en">The description is long enough to explain the task boundary.</span></li><li><span data-lang="zh-CN">description 已包含使用场景或排除边界信号。</span><span data-lang="en">The description includes usage-scenario or exclusion-boundary signals.</span></li></ul></div></article><article class='metric-card'><div class='metric-card-head'><span class='metric-label'><span data-lang="zh-CN">证据充分</span><span data-lang="en">Evidence depth</span></span><strong>100</strong></div><div class='metric-card-body'><ul class="compact-list"><li><span data-lang="zh-CN">已生成 20 / 20 类报告证据。</span><span data-lang="en">Generated 20 / 20 evidence report types.</span></li><li><span data-lang="zh-CN">skill-ir.json 已存在。</span><span data-lang="en">skill-ir.json exists.</span></li><li><span data-lang="zh-CN">compiled_targets.json 已存在。</span><span data-lang="en">compiled_targets.json exists.</span></li></ul></div></article><article class='metric-card'><div class='metric-card-head'><span class='metric-label'><span data-lang="zh-CN">可维护性</span><span data-lang="en">Maintainability</span></span><strong>100</strong></div><div class='metric-card-body'><ul class="compact-list"><li><span data-lang="zh-CN">SKILL.md 约 339 个词/字。</span><span data-lang="en">SKILL.md is about 339 words/characters.</span></li><li><span data-lang="zh-CN">入口文件保持克制,可维护性较好。</span><span data-lang="en">The entrypoint stays restrained, which supports maintainability.</span></li><li><span data-lang="zh-CN">references/ 已承载扩展指导。</span><span data-lang="en">references/ carries extended guidance.</span></li></ul></div></article><article class='metric-card'><div class='metric-card-head'><span class='metric-label'><span data-lang="zh-CN">可迁移性</span><span data-lang="en">Portability</span></span><strong>100</strong></div><div class='metric-card-body'><ul class="compact-list"><li><span data-lang="zh-CN">agents/interface.yaml 已存在。</span><span data-lang="en">agents/interface.yaml exists.</span></li><li><span data-lang="zh-CN">manifest.json 已存在。</span><span data-lang="en">manifest.json exists.</span></li><li><span data-lang="zh-CN">目标平台或 adapter target 已声明。</span><span data-lang="en">Target platforms or adapter targets are declared.</span></li></ul></div></article><article class='metric-card'><div class='metric-card-head'><span class='metric-label'><span data-lang="zh-CN">上下文成本</span><span data-lang="en">Context cost</span></span><strong>42</strong></div><div class='metric-card-body'><ul class="compact-list"><li><span data-lang="zh-CN">入口约 339 个词/字,references 约 16934 个词/字。</span><span data-lang="en">Entrypoint is about 339 words/characters; references are about 16934.</span></li><li><span data-lang="zh-CN">分数越高代表上下文成本越低。</span><span data-lang="en">A higher score means lower context cost.</span></li><li><span data-lang="zh-CN">上下文成本偏高,建议压缩入口或拆分 references。</span><span data-lang="en">Context cost is high; compress the entrypoint or split references further.</span></li></ul></div></article></div>
</div>
</div>
</div>
@@ -845,11 +845,11 @@
<div class="two-col">
<article class="panel">
<h3><span data-lang="zh-CN">执行流程</span><span data-lang="en">Execution Flow</span></h3>
<ol class="step-list"><li><span data-lang="zh-CN">原始说明可切换到英文查看;默认中文报告保留结论与结构说明。</span><span data-lang="en">One-off/no reusable process: `Do not create a skill`; `near-neighbor`; require `repeated use` + `reusable output contract`.</span></li><li><span data-lang="zh-CN">原始说明可切换到英文查看;默认中文报告保留结论与结构说明。</span><span data-lang="en">Capture job, output, exclusions, constraints, standards, lightest fit.</span></li><li><span data-lang="zh-CN">原始说明可切换到英文查看;默认中文报告保留结论与结构说明。</span><span data-lang="en">Scan up to `3-5` references: external, user, local; skip tiny edits; surface only uncertainty/conflict.</span></li><li><span data-lang="zh-CN">原始说明可切换到英文查看;默认中文报告保留结论与结构说明。</span><span data-lang="en">Write `description` early; route/boundary edits need `trigger_eval.py`; releases need risk-matched gates before folders.</span></li><li><span data-lang="zh-CN">原始说明可切换到英文查看;默认中文报告保留结论与结构说明。</span><span data-lang="en">Add output-risk, artifact-design, prompt-quality, system-model, next directions only when earned.</span></li></ol>
<ol class="step-list"><li><span data-lang="zh-CN">原始说明可切换到英文查看;默认中文报告保留结论与结构说明。</span><span data-lang="en">For one-off/no reusable process: `Do not create a skill`; `near-neighbor`; require `repeated use` + `reusable output contract`.</span></li><li><span data-lang="zh-CN">原始说明可切换到英文查看;默认中文报告保留结论与结构说明。</span><span data-lang="en">Capture job, output, exclusions, constraints, standards, and the lightest fit.</span></li><li><span data-lang="zh-CN">原始说明可切换到英文查看;默认中文报告保留结论与结构说明。</span><span data-lang="en">Scan references in order: external benchmark, user source, local fit; surface only uncertainty or conflict.</span></li><li><span data-lang="zh-CN">原始说明可切换到英文查看;默认中文报告保留结论与结构说明。</span><span data-lang="en">Write `description` early, test route quality, then add only earned folders and gates.</span></li><li><span data-lang="zh-CN">原始说明可切换到英文查看;默认中文报告保留结论与结构说明。</span><span data-lang="en">Add output-risk, artifact-design, prompt-quality, system-model, and next directions only when useful.</span></li></ol>
</article>
<article class="panel">
<h3><span data-lang="zh-CN">调用方式</span><span data-lang="en">How To Use</span></h3>
<ol class="step-list"><li><span data-lang="zh-CN">当你需要把工作流或笔记沉淀成结构精简、触发清晰且带必要 eval 的可复用 Skill 时使用 $yao-meta-skill。</span><span data-lang="en">Use $yao-meta-skill to turn my workflow or notes into a reusable skill with lean structure, clear triggering, and the right evals.</span></li><li><span data-lang="zh-CN">Use this skill when the request matches: Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.</span><span data-lang="en">Use this skill when the request matches the frontmatter description.</span></li></ol>
<ol class="step-list"><li><span data-lang="zh-CN">当你需要把工作流或笔记沉淀成结构精简、触发清晰且带必要 eval 的可复用 Skill 时使用 $yao-meta-skill。</span><span data-lang="en">Use $yao-meta-skill to turn my workflow or notes into a reusable skill with lean structure, clear triggering, and the right evals.</span></li><li><span data-lang="zh-CN">当用户请求与该 Skill 的触发描述匹配时使用。</span><span data-lang="en">Use this skill when the request matches the frontmatter description.</span></li></ol>
</article>
</div>
</div>
@@ -865,7 +865,7 @@
<div class="two-col">
<article class="panel">
<h3><span data-lang="zh-CN">触发描述</span><span data-lang="en">Trigger</span></h3>
<p><span data-lang="zh-CN">Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.</span><span data-lang="en">Skill-specific source text is authored in Chinese; switch to Simplified Chinese for the exact wording.</span></p>
<p><span data-lang="zh-CN">该 Skill 的触发描述来自 SKILL.md frontmatter;默认中文报告先呈现能力边界,原始英文描述可切换到英文查看。</span><span data-lang="en">Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.</span></p>
<h3><span data-lang="zh-CN">输入材料</span><span data-lang="en">Inputs</span></h3>
<ul class="list"><li><span data-lang="zh-CN">原始说明可切换到英文查看;默认中文报告保留结论与结构说明。</span><span data-lang="en">rough workflow notes, SOPs, runbooks, prompts, transcripts, documents, or repeated task descriptions</span></li><li><span data-lang="zh-CN">原始说明可切换到英文查看;默认中文报告保留结论与结构说明。</span><span data-lang="en">an existing skill directory that needs refactor, evaluation, packaging, or governance hardening</span></li><li><span data-lang="zh-CN">原始说明可切换到英文查看;默认中文报告保留结论与结构说明。</span><span data-lang="en">target platform requirements such as OpenAI, Claude, generic Agent Skills, or team distribution</span></li><li><span data-lang="zh-CN">原始说明可切换到英文查看;默认中文报告保留结论与结构说明。</span><span data-lang="en">benchmark references, local constraints, desired maturity tier, and review standards</span></li></ul>
</article>
@@ -888,7 +888,7 @@
<div>
<table>
<thead><tr><th><span data-lang="zh-CN">类型</span><span data-lang="en">Type</span></th><th><span data-lang="zh-CN">证据</span><span data-lang="en">Evidence</span></th><th><span data-lang="zh-CN">建议</span><span data-lang="en">Action</span></th></tr></thead>
<tbody><tr><td><span data-lang="zh-CN">强项</span><span data-lang="en">Strength</span></td><td><span data-lang="zh-CN">触发面保持精简,并锚定在 frontmatter description。</span><span data-lang="en">The trigger surface stays lean and anchored in the frontmatter description.</span></td><td><span data-lang="zh-CN">保留并复用</span><span data-lang="en">Keep</span></td></tr><tr><td><span data-lang="zh-CN">强项</span><span data-lang="en">Strength</span></td><td><span data-lang="zh-CN">已生成 Skill IR,核心语义可先于平台打包被审查和迁移。</span><span data-lang="en">Skill IR is generated so core semantics can be reviewed and migrated before platform packaging.</span></td><td><span data-lang="zh-CN">保留并复用</span><span data-lang="en">Keep</span></td></tr><tr><td><span data-lang="zh-CN">强项</span><span data-lang="en">Strength</span></td><td><span data-lang="zh-CN">已生成目标编译报告,可审查 IR 到 OpenAI、Claude、generic 等目标契约的映射。</span><span data-lang="en">Target compilation evidence is generated to review how IR maps to OpenAI, Claude, generic, and other target contracts.</span></td><td><span data-lang="zh-CN">保留并复用</span><span data-lang="en">Keep</span></td></tr><tr><td><span data-lang="zh-CN">缺口</span><span data-lang="en">Gap</span></td><td><span data-lang="zh-CN">上下文成本需要补强:入口约 314 个词/字,references 约 16934 个词/字。</span><span data-lang="en">Context cost needs improvement: Entrypoint is about 314 words/characters; references are about 16934.</span></td><td><span data-lang="zh-CN">纳入下一轮修复</span><span data-lang="en">Fix next</span></td></tr></tbody>
<tbody><tr><td><span data-lang="zh-CN">强项</span><span data-lang="en">Strength</span></td><td><span data-lang="zh-CN">触发面保持精简,并锚定在 frontmatter description。</span><span data-lang="en">The trigger surface stays lean and anchored in the frontmatter description.</span></td><td><span data-lang="zh-CN">保留并复用</span><span data-lang="en">Keep</span></td></tr><tr><td><span data-lang="zh-CN">强项</span><span data-lang="en">Strength</span></td><td><span data-lang="zh-CN">已生成 Skill IR,核心语义可先于平台打包被审查和迁移。</span><span data-lang="en">Skill IR is generated so core semantics can be reviewed and migrated before platform packaging.</span></td><td><span data-lang="zh-CN">保留并复用</span><span data-lang="en">Keep</span></td></tr><tr><td><span data-lang="zh-CN">强项</span><span data-lang="en">Strength</span></td><td><span data-lang="zh-CN">已生成目标编译报告,可审查 IR 到 OpenAI、Claude、generic 等目标契约的映射。</span><span data-lang="en">Target compilation evidence is generated to review how IR maps to OpenAI, Claude, generic, and other target contracts.</span></td><td><span data-lang="zh-CN">保留并复用</span><span data-lang="en">Keep</span></td></tr><tr><td><span data-lang="zh-CN">缺口</span><span data-lang="en">Gap</span></td><td><span data-lang="zh-CN">上下文成本需要补强:入口约 339 个词/字,references 约 16934 个词/字。</span><span data-lang="en">Context cost needs improvement: Entrypoint is about 339 words/characters; references are about 16934.</span></td><td><span data-lang="zh-CN">纳入下一轮修复</span><span data-lang="en">Fix next</span></td></tr></tbody>
</table>
<div class="two-col quality-panels">
<article class="panel">
@@ -925,11 +925,11 @@
<div>
<table>
<thead><tr><th><span data-lang="zh-CN">风险</span><span data-lang="en">Risk</span></th><th><span data-lang="zh-CN">信号</span><span data-lang="en">Signal</span></th><th><span data-lang="zh-CN">应对</span><span data-lang="en">Response</span></th></tr></thead>
<tbody><tr><td><span data-lang="zh-CN">误触发风险</span><span data-lang="en">Trigger risk</span></td><td><span data-lang="zh-CN">frontmatter description 已存在,具备基础路由面。</span><span data-lang="en">The frontmatter description exists, giving the skill a basic routing surface.</span></td><td><span data-lang="zh-CN">先补证据和边界,再增加包体复杂度。</span><span data-lang="en">Improve evidence and boundaries before adding package complexity.</span></td></tr><tr><td><span data-lang="zh-CN">输出漂移风险</span><span data-lang="en">Output drift risk</span></td><td><span data-lang="zh-CN">已生成 20 / 20 类报告证据。</span><span data-lang="en">Generated 20 / 20 evidence report types.</span></td><td><span data-lang="zh-CN">先补证据和边界,再增加包体复杂度。</span><span data-lang="en">Improve evidence and boundaries before adding package complexity.</span></td></tr><tr><td><span data-lang="zh-CN">证据不足风险</span><span data-lang="en">Evidence gap risk</span></td><td><span data-lang="zh-CN">已生成 20 / 20 类报告证据。</span><span data-lang="en">Generated 20 / 20 evidence report types.</span></td><td><span data-lang="zh-CN">先补证据和边界,再增加包体复杂度。</span><span data-lang="en">Improve evidence and boundaries before adding package complexity.</span></td></tr><tr><td><span data-lang="zh-CN">包体膨胀风险</span><span data-lang="en">Package bloat risk</span></td><td><span data-lang="zh-CN">SKILL.md 约 314 个词/字。</span><span data-lang="en">SKILL.md is about 314 words/characters.</span></td><td><span data-lang="zh-CN">先补证据和边界,再增加包体复杂度。</span><span data-lang="en">Improve evidence and boundaries before adding package complexity.</span></td></tr><tr><td><span data-lang="zh-CN">跨平台迁移风险</span><span data-lang="en">Portability risk</span></td><td><span data-lang="zh-CN">agents/interface.yaml 已存在。</span><span data-lang="en">agents/interface.yaml exists.</span></td><td><span data-lang="zh-CN">先补证据和边界,再增加包体复杂度。</span><span data-lang="en">Improve evidence and boundaries before adding package complexity.</span></td></tr></tbody>
<tbody><tr><td><span data-lang="zh-CN">误触发风险</span><span data-lang="en">Trigger risk</span></td><td><span data-lang="zh-CN">frontmatter description 已存在,具备基础路由面。</span><span data-lang="en">The frontmatter description exists, giving the skill a basic routing surface.</span></td><td><span data-lang="zh-CN">先补证据和边界,再增加包体复杂度。</span><span data-lang="en">Improve evidence and boundaries before adding package complexity.</span></td></tr><tr><td><span data-lang="zh-CN">输出漂移风险</span><span data-lang="en">Output drift risk</span></td><td><span data-lang="zh-CN">已生成 20 / 20 类报告证据。</span><span data-lang="en">Generated 20 / 20 evidence report types.</span></td><td><span data-lang="zh-CN">先补证据和边界,再增加包体复杂度。</span><span data-lang="en">Improve evidence and boundaries before adding package complexity.</span></td></tr><tr><td><span data-lang="zh-CN">证据不足风险</span><span data-lang="en">Evidence gap risk</span></td><td><span data-lang="zh-CN">已生成 20 / 20 类报告证据。</span><span data-lang="en">Generated 20 / 20 evidence report types.</span></td><td><span data-lang="zh-CN">先补证据和边界,再增加包体复杂度。</span><span data-lang="en">Improve evidence and boundaries before adding package complexity.</span></td></tr><tr><td><span data-lang="zh-CN">包体膨胀风险</span><span data-lang="en">Package bloat risk</span></td><td><span data-lang="zh-CN">SKILL.md 约 339 个词/字。</span><span data-lang="en">SKILL.md is about 339 words/characters.</span></td><td><span data-lang="zh-CN">先补证据和边界,再增加包体复杂度。</span><span data-lang="en">Improve evidence and boundaries before adding package complexity.</span></td></tr><tr><td><span data-lang="zh-CN">跨平台迁移风险</span><span data-lang="en">Portability risk</span></td><td><span data-lang="zh-CN">agents/interface.yaml 已存在。</span><span data-lang="en">agents/interface.yaml exists.</span></td><td><span data-lang="zh-CN">先补证据和边界,再增加包体复杂度。</span><span data-lang="en">Improve evidence and boundaries before adding package complexity.</span></td></tr></tbody>
</table>
</div>
</div>
<article class='panel world-readiness'><div class='world-readiness-head'><div><h3><span data-lang="zh-CN">世界证据</span><span data-lang="en">World Evidence</span></h3><p><span data-lang="zh-CN">世界级证据尚未完成:4 项待补,0 项已接受。</span><span data-lang="en">World-class evidence is not complete: 4 pending, 0 accepted.</span></p></div><span class='world-status'><span data-lang="zh-CN">证据待补</span><span data-lang="en">Evidence pending</span></span></div><div class='evidence-kpis'><article class='evidence-kpi'><span><span data-lang="zh-CN">待补证据</span><span data-lang="en">Pending</span></span><strong>4</strong><small><span data-lang="zh-CN">仍需外部或人工证据接受。</span><span data-lang="en">External or human evidence still needs acceptance.</span></small></article><article class='evidence-kpi'><span><span data-lang="zh-CN">已接受</span><span data-lang="en">Accepted</span></span><strong>0</strong><small><span data-lang="zh-CN">已通过 source check 与提交契约。</span><span data-lang="en">Passed source checks and submission contract.</span></small></article><article class='evidence-kpi'><span><span data-lang="zh-CN">源检查</span><span data-lang="en">Source Checks</span></span><strong>12 / 19</strong><small><span data-lang="zh-CN">通过数 / 总检查数。</span><span data-lang="en">Passed checks / total checks.</span></small></article></div><div class='evidence-list'><article class='evidence-item'><div><span><span data-lang="zh-CN">外部证据</span><span data-lang="en">External evidence</span></span><h4><span data-lang="zh-CN">提供商留出</span><span data-lang="en">Provider Holdout</span></h4></div><p><span data-lang="zh-CN">缺少真实 provider 模型运行和 token metadata。</span><span data-lang="en">Missing a real provider model run and token metadata.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><p class='blocked-checks-empty'><span data-lang="zh-CN">当前没有阻塞检查。</span><span data-lang="en">No blocked checks right now.</span></p></article><article class='evidence-item'><div><span><span data-lang="zh-CN">人工证据</span><span data-lang="en">Human evidence</span></span><h4><span data-lang="zh-CN">人工盲评</span><span data-lang="en">Human Adjudication</span></h4></div><p><span data-lang="zh-CN">盲评 pair 仍待真实 reviewer 决策。</span><span data-lang="en">Blind-review pairs still need real reviewer decisions.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><ul class='blocked-checks'><li><span data-lang="zh-CN">无待判定</span><span data-lang="en">No pending decisions</span></li><li><span data-lang="zh-CN">盲评完成</span><span data-lang="en">Judgments complete</span></li><li><span data-lang="zh-CN">Reviewer metadata</span><span data-lang="en">Reviewer metadata</span></li></ul></article><article class='evidence-item'><div><span><span data-lang="zh-CN">外部证据</span><span data-lang="en">External evidence</span></span><h4><span data-lang="zh-CN">原生权限</span><span data-lang="en">Native Permission</span></h4></div><p><span data-lang="zh-CN">原生 runtime enforcement 仍待目标客户端或外部安装器证明。</span><span data-lang="en">Native runtime enforcement still needs target-client or external-installer proof.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><ul class='blocked-checks'><li><span data-lang="zh-CN">原生执行</span><span data-lang="en">Native enforcement</span></li></ul></article><article class='evidence-item'><div><span><span data-lang="zh-CN">外部证据</span><span data-lang="en">External evidence</span></span><h4><span data-lang="zh-CN">原生遥测</span><span data-lang="en">Native Telemetry</span></h4></div><p><span data-lang="zh-CN">真实外部客户端 metadata-only 事件仍未导入。</span><span data-lang="en">Real external-client metadata-only events have not been imported yet.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><ul class='blocked-checks'><li><span data-lang="zh-CN">外部事件</span><span data-lang="en">External events</span></li></ul></article></div></article>
<article class='panel world-readiness'><div class='world-readiness-head'><div><h3><span data-lang="zh-CN">世界证据</span><span data-lang="en">World Evidence</span></h3><p><span data-lang="zh-CN">世界级证据尚未完成:4 项待补,0 项已接受。</span><span data-lang="en">World-class evidence is not complete: 4 pending, 0 accepted.</span></p></div><span class='world-status'><span data-lang="zh-CN">证据待补</span><span data-lang="en">Evidence pending</span></span></div><div class='evidence-kpis'><article class='evidence-kpi'><span><span data-lang="zh-CN">待补证据</span><span data-lang="en">Pending</span></span><strong>4</strong><small><span data-lang="zh-CN">仍需外部或人工证据接受。</span><span data-lang="en">External or human evidence still needs acceptance.</span></small></article><article class='evidence-kpi'><span><span data-lang="zh-CN">已接受</span><span data-lang="en">Accepted</span></span><strong>0</strong><small><span data-lang="zh-CN">已通过 source check 与提交契约。</span><span data-lang="en">Passed source checks and submission contract.</span></small></article><article class='evidence-kpi'><span><span data-lang="zh-CN">源检查</span><span data-lang="en">Source Checks</span></span><strong>11 / 19</strong><small><span data-lang="zh-CN">通过数 / 总检查数。</span><span data-lang="en">Passed checks / total checks.</span></small></article></div><div class='evidence-list'><article class='evidence-item'><div><span><span data-lang="zh-CN">外部证据</span><span data-lang="en">External evidence</span></span><h4><span data-lang="zh-CN">提供商留出</span><span data-lang="en">Provider Holdout</span></h4></div><p><span data-lang="zh-CN">缺少真实 provider 模型运行和 token metadata。</span><span data-lang="en">Missing a real provider model run and token metadata.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><p class='blocked-checks-empty'><span data-lang="zh-CN">当前没有阻塞检查。</span><span data-lang="en">No blocked checks right now.</span></p></article><article class='evidence-item'><div><span><span data-lang="zh-CN">人工证据</span><span data-lang="en">Human evidence</span></span><h4><span data-lang="zh-CN">人工盲评</span><span data-lang="en">Human Adjudication</span></h4></div><p><span data-lang="zh-CN">盲评 pair 仍待真实 reviewer 决策。</span><span data-lang="en">Blind-review pairs still need real reviewer decisions.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><ul class='blocked-checks'><li><span data-lang="zh-CN">无待判定</span><span data-lang="en">No pending decisions</span></li><li><span data-lang="zh-CN">盲评完成</span><span data-lang="en">Judgments complete</span></li><li><span data-lang="zh-CN">Reviewer metadata</span><span data-lang="en">Reviewer metadata</span></li></ul></article><article class='evidence-item'><div><span><span data-lang="zh-CN">外部证据</span><span data-lang="en">External evidence</span></span><h4><span data-lang="zh-CN">原生权限</span><span data-lang="en">Native Permission</span></h4></div><p><span data-lang="zh-CN">原生 runtime enforcement 仍待目标客户端或外部安装器证明。</span><span data-lang="en">Native runtime enforcement still needs target-client or external-installer proof.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><ul class='blocked-checks'><li><span data-lang="zh-CN">原生执行</span><span data-lang="en">Native enforcement</span></li></ul></article><article class='evidence-item'><div><span><span data-lang="zh-CN">外部证据</span><span data-lang="en">External evidence</span></span><h4><span data-lang="zh-CN">原生遥测</span><span data-lang="en">Native Telemetry</span></h4></div><p><span data-lang="zh-CN">真实外部客户端 metadata-only 事件仍未导入。</span><span data-lang="en">Real external-client metadata-only events have not been imported yet.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><ul class='blocked-checks'><li><span data-lang="zh-CN">外部事件</span><span data-lang="en">External events</span></li><li><span data-lang="zh-CN">采用样本</span><span data-lang="en">Adoption sample</span></li></ul></article></div></article>
</div>
</section>
@@ -940,7 +940,7 @@
<p><span data-lang="zh-CN">让 reviewer 快速确认关键文件、目录和资产分布。</span><span data-lang="en">Lets reviewers confirm key files, directories, and asset distribution quickly.</span></p>
</div>
<div class="two-col">
<figure class="chart-figure" data-chart="asset_donut"><svg viewBox="0 0 430 270" role="img" aria-label="资产分布"><text data-lang="zh-CN" x="20" y="30" class="chart-title">资产分布</text><text data-lang="en" x="20" y="30" class="chart-title">Asset Distribution</text><circle cx="130" cy="130" r="70" fill="none" stroke="#1B365D" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="0.0" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#2D5A8A" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="-0.5" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#D0DCE9" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="-1.0" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#E4ECF5" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="-1.5" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#e8e6dc" stroke-width="24" stroke-dasharray="18.0 82.0" stroke-dashoffset="-2.1" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#504e49" stroke-width="24" stroke-dasharray="79.9 20.1" stroke-dashoffset="-20.1" pathLength="100" transform="rotate(-90 130 130)"/><text data-lang="zh-CN" x="130" y="136" text-anchor="middle">393</text><text data-lang="en" x="130" y="136" text-anchor="middle">393 items</text><text data-lang="zh-CN" x="235" y="78">SKILL.md</text><text data-lang="en" x="235" y="78">SKILL.md</text><text data-lang="zh-CN" x="235" y="100">README.md</text><text data-lang="en" x="235" y="100">README.md</text><text data-lang="zh-CN" x="235" y="122">agents/interface.yaml</text><text data-lang="en" x="235" y="122">agents/interface.yaml</text><text data-lang="zh-CN" x="235" y="144">manifest.json</text><text data-lang="en" x="235" y="144">manifest.json</text><text data-lang="zh-CN" x="235" y="166">references</text><text data-lang="en" x="235" y="166">references</text><text data-lang="zh-CN" x="235" y="188">scripts</text><text data-lang="en" x="235" y="188">scripts</text></svg><figcaption><span data-lang="zh-CN">资产分布图展示当前包体的文件和目录重心。</span><span data-lang="en">The asset distribution chart shows where files and directories are concentrated.</span></figcaption></figure>
<figure class="chart-figure" data-chart="asset_donut"><svg viewBox="0 0 430 270" role="img" aria-label="资产分布"><text data-lang="zh-CN" x="20" y="30" class="chart-title">资产分布</text><text data-lang="en" x="20" y="30" class="chart-title">Asset Distribution</text><circle cx="130" cy="130" r="70" fill="none" stroke="#1B365D" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="0.0" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#2D5A8A" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="-0.5" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#D0DCE9" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="-1.0" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#E4ECF5" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="-1.6" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#e8e6dc" stroke-width="24" stroke-dasharray="18.2 81.8" stroke-dashoffset="-2.1" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#504e49" stroke-width="24" stroke-dasharray="79.7 20.3" stroke-dashoffset="-20.3" pathLength="100" transform="rotate(-90 130 130)"/><text data-lang="zh-CN" x="130" y="136" text-anchor="middle">456</text><text data-lang="en" x="130" y="136" text-anchor="middle">456 items</text><text data-lang="zh-CN" x="235" y="78">SKILL.md</text><text data-lang="en" x="235" y="78">SKILL.md</text><text data-lang="zh-CN" x="235" y="100">README.md</text><text data-lang="en" x="235" y="100">README.md</text><text data-lang="zh-CN" x="235" y="122">agents/interface.yaml</text><text data-lang="en" x="235" y="122">agents/interface.yaml</text><text data-lang="zh-CN" x="235" y="144">manifest.json</text><text data-lang="en" x="235" y="144">manifest.json</text><text data-lang="zh-CN" x="235" y="166">references</text><text data-lang="en" x="235" y="166">references</text><text data-lang="zh-CN" x="235" y="188">scripts</text><text data-lang="en" x="235" y="188">scripts</text></svg><figcaption><span data-lang="zh-CN">资产分布图展示当前包体的文件和目录重心。</span><span data-lang="en">The asset distribution chart shows where files and directories are concentrated.</span></figcaption></figure>
<table>
<thead><tr><th><span data-lang="zh-CN">路径</span><span data-lang="en">Path</span></th><th><span data-lang="zh-CN">作用</span><span data-lang="en">Role</span></th><th><span data-lang="zh-CN">类型</span><span data-lang="en">Type</span></th></tr></thead>
<tbody><tr><td>SKILL.md</td><td><span data-lang="zh-CN">Skill 入口文件</span><span data-lang="en">Skill entrypoint</span></td><td><span data-lang="zh-CN">文件</span><span data-lang="en">file</span></td></tr><tr><td>README.md</td><td><span data-lang="zh-CN">人类可读使用说明</span><span data-lang="en">Human-readable usage guide</span></td><td><span data-lang="zh-CN">文件</span><span data-lang="en">file</span></td></tr><tr><td>agents/interface.yaml</td><td><span data-lang="zh-CN">跨平台接口元数据</span><span data-lang="en">Neutral interface metadata</span></td><td><span data-lang="zh-CN">文件</span><span data-lang="en">file</span></td></tr><tr><td>manifest.json</td><td><span data-lang="zh-CN">生命周期与打包元数据</span><span data-lang="en">Lifecycle and portability metadata</span></td><td><span data-lang="zh-CN">文件</span><span data-lang="en">file</span></td></tr><tr><td>references</td><td><span data-lang="zh-CN">扩展指导与复用资料</span><span data-lang="en">Extended guidance and reusable notes</span></td><td><span data-lang="zh-CN">目录</span><span data-lang="en">folder</span></td></tr><tr><td>scripts</td><td><span data-lang="zh-CN">确定性脚本或本地工具</span><span data-lang="en">Deterministic helpers or local tooling</span></td><td><span data-lang="zh-CN">目录</span><span data-lang="en">folder</span></td></tr><tr><td>evals</td><td><span data-lang="zh-CN">触发与质量检查</span><span data-lang="en">Trigger and quality checks</span></td><td><span data-lang="zh-CN">目录</span><span data-lang="en">folder</span></td></tr><tr><td>reports</td><td><span data-lang="zh-CN">生成的证据与总结报告</span><span data-lang="en">Generated evidence and overview artifacts</span></td><td><span data-lang="zh-CN">目录</span><span data-lang="en">folder</span></td></tr></tbody>
+74 -75
View File
@@ -3,7 +3,7 @@
"name": "yao-meta-skill",
"title": "Yao Meta Skill",
"display_name": "Yao Meta Skill",
"description": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.",
"description": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.",
"maturity": "governed",
"updated_at": "2026-03-31",
"core_value": "把一次性经验沉淀为可复用、可评估、可迁移的 Skill 包体。",
@@ -81,7 +81,7 @@
"label": "可维护性",
"score": 100,
"reasons": [
"SKILL.md 约 314 个词/字。",
"SKILL.md 约 339 个词/字。",
"入口文件保持克制,可维护性较好。",
"references/ 已承载扩展指导。",
"scripts/ 已承载确定性逻辑。",
@@ -102,7 +102,7 @@
"label": "上下文成本",
"score": 42,
"reasons": [
"入口约 314 个词/字,references 约 16934 个词/字。",
"入口约 339 个词/字,references 约 16934 个词/字。",
"分数越高代表上下文成本越低。",
"上下文成本偏高,建议压缩入口或拆分 references。"
]
@@ -156,7 +156,7 @@
},
"contract_boundary": {
"trigger": {
"description": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.",
"description": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.",
"activation": "manual",
"execution": "inline",
"shell": "bash"
@@ -184,7 +184,7 @@
"boundary_cards": [
{
"label": "Owned",
"body": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs."
"body": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution."
},
{
"label": "Adjacent",
@@ -206,7 +206,7 @@
"已生成 Output Review Adjudication,可记录盲评决策、一致率和待评审项。"
],
"gaps": [
"上下文成本需要补强:入口约 314 个词/字,references 约 16934 个词/字。"
"上下文成本需要补强:入口约 339 个词/字,references 约 16934 个词/字。"
],
"recommendations": [
"先改触发边界,再扩展工作流。",
@@ -271,7 +271,7 @@
"name": "包体膨胀风险",
"impact": 2,
"probability": 1,
"signal": "SKILL.md 约 314 个词/字。",
"signal": "SKILL.md 约 339 个词/字。",
"response": "先补证据和边界,再增加包体复杂度。"
},
{
@@ -412,7 +412,7 @@
"external_pending_count": 3,
"human_pending_count": 1,
"source_check_count": 19,
"source_pass_count": 12,
"source_pass_count": 11,
"conclusion_zh": "世界级证据尚未完成:4 项待补,0 项已接受。",
"conclusion_en": "World-class evidence is not complete: 4 pending, 0 accepted.",
"entries": [
@@ -469,7 +469,8 @@
"summary_zh": "真实外部客户端 metadata-only 事件仍未导入。",
"summary_en": "Real external-client metadata-only events have not been imported yet.",
"blocked_checks": [
"External events"
"External events",
"Adoption sample"
]
}
]
@@ -510,7 +511,7 @@
"path": "scripts",
"label": "Deterministic helpers or local tooling",
"kind": "folder",
"file_count": 155
"file_count": 153
},
{
"path": "evals",
@@ -522,10 +523,10 @@
"path": "reports",
"label": "Generated evidence and overview artifacts",
"kind": "folder",
"file_count": 170
"file_count": 235
}
],
"file_count": 393,
"file_count": 456,
"folder_count": 4,
"distribution": [
{
@@ -550,7 +551,7 @@
},
{
"label": "scripts",
"value": 155
"value": 153
},
{
"label": "evals",
@@ -558,7 +559,7 @@
},
{
"label": "reports",
"value": 170
"value": 235
}
]
},
@@ -637,17 +638,17 @@
"name": "yao-meta-skill",
"title": "Yao Meta Skill",
"display_name": "Yao Meta Skill",
"description": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.",
"description": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.",
"logic_steps": [
"One-off/no reusable process: `Do not create a skill`; `near-neighbor`; require `repeated use` + `reusable output contract`.",
"Capture job, output, exclusions, constraints, standards, lightest fit.",
"Scan up to `3-5` references: external, user, local; skip tiny edits; surface only uncertainty/conflict.",
"Write `description` early; route/boundary edits need `trigger_eval.py`; releases need risk-matched gates before folders.",
"Add output-risk, artifact-design, prompt-quality, system-model, next directions only when earned."
"For one-off/no reusable process: `Do not create a skill`; `near-neighbor`; require `repeated use` + `reusable output contract`.",
"Capture job, output, exclusions, constraints, standards, and the lightest fit.",
"Scan references in order: external benchmark, user source, local fit; surface only uncertainty or conflict.",
"Write `description` early, test route quality, then add only earned folders and gates.",
"Add output-risk, artifact-design, prompt-quality, system-model, and next directions only when useful."
],
"usage_steps": [
"Use $yao-meta-skill to turn my workflow or notes into a reusable skill with lean structure, clear triggering, and the right evals.",
"Use this skill when the request matches: Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs."
"Use this skill when the request matches: Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution."
],
"package_map": [
{
@@ -684,7 +685,7 @@
"path": "scripts",
"label": "Deterministic helpers or local tooling",
"kind": "folder",
"file_count": 155
"file_count": 153
},
{
"path": "evals",
@@ -696,7 +697,7 @@
"path": "reports",
"label": "Generated evidence and overview artifacts",
"kind": "folder",
"file_count": 170
"file_count": 235
}
],
"strengths": [
@@ -714,7 +715,7 @@
"用户说出类似需求时:Use $yao-meta-skill to turn my workflow or notes into a reusable skill with lean structure, clear triggering, and the right evals."
],
"trigger_contract": {
"description": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.",
"description": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.",
"activation": "manual",
"execution": "inline",
"shell": "bash"
@@ -1016,13 +1017,13 @@
"ok": true,
"summary": {
"reproducibility_ready": true,
"release_lock_ready": false,
"release_lock_ready": true,
"methodology_complete": true,
"required_artifact_count": 25,
"missing_artifact_count": 0,
"evidence_bundle_sha256": "6c95043c2d8513102b37bc70a01647246933c84e8a27c2748cc2cae20e040158",
"source_contract_sha256": "db71157184dc649ee72dfcaf399204d44a366d942393d055571e0137d42c9f7c",
"archive_sha256": "c56a8519244c0bc8ec17c92d4641c832629cc059f4b51fe177a2c039515253a7",
"evidence_bundle_sha256": "55a6c33c12e14d6507d4a5d4d4cf1268db35fb323d523e8b23ce9c73aedf8db0",
"source_contract_sha256": "5a99ef3133b0148cd5bbc1cd85fad4830bf34ca2bbac709f1e1fea2f810b1257",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"output_case_count": 5,
"failure_disclosure_count": 3,
"command_count": 23,
@@ -1037,21 +1038,21 @@
"world_class_task_count": 4,
"world_class_ledger_pending_count": 4,
"world_class_source_check_count": 19,
"world_class_source_pass_count": 12,
"world_class_source_blocked_count": 7,
"beta_test_ready": false,
"beta_test_blocker_count": 1,
"world_class_source_pass_count": 11,
"world_class_source_blocked_count": 8,
"beta_test_ready": true,
"beta_test_blocker_count": 0,
"beta_test_deferred_evidence_count": 4,
"public_claim_ready": false,
"public_claim_blocker_count": 4,
"public_claim_blocker_count": 3,
"working_tree_dirty": true,
"changed_file_count": 37,
"source_tree_dirty": true,
"source_changed_file_count": 1,
"changed_file_count": 29,
"source_tree_dirty": false,
"source_changed_file_count": 0,
"generated_tree_dirty": true,
"generated_changed_file_count": 36
"generated_changed_file_count": 29
},
"commit": "24bea607a2b16e766bc8f2bc8483f22fae1edc61",
"commit": "e79050ed12d057811d7d13ab7d8bcc5a06af76d4",
"missing_artifacts": [],
"limitations": [
"The git commit and dirty flags are generation-time context; release lock is blocked by source changes, while generated evidence artifacts are tracked separately.",
@@ -1136,9 +1137,9 @@
"failures": []
},
"trust_security": {
"scanned_files": 247,
"script_count": 155,
"internal_module_count": 69,
"scanned_files": 245,
"script_count": 153,
"internal_module_count": 67,
"secret_findings": 0,
"dependency_files": [
"requirements-ci.txt"
@@ -1146,7 +1147,7 @@
"network_script_count": 3,
"network_policy_covered_count": 3,
"network_policy_missing_count": 0,
"file_write_script_count": 74,
"file_write_script_count": 73,
"permission_required_count": 3,
"permission_approved_count": 3,
"permission_missing_count": 0,
@@ -1156,24 +1157,24 @@
"help_smoke_failed_count": 0,
"interactive_script_count": 0,
"package_hash_scope": "source-contract-without-generated-reports",
"package_hash_file_count": 247,
"package_sha256": "db71157184dc649ee72dfcaf399204d44a366d942393d055571e0137d42c9f7c"
"package_hash_file_count": 245,
"package_sha256": "5a99ef3133b0148cd5bbc1cd85fad4830bf34ca2bbac709f1e1fea2f810b1257"
},
"skill_atlas": {
"skill_count": 11,
"skill_count": 12,
"actionable_skill_count": 1,
"route_collision_count": 5,
"actionable_route_collision_count": 0,
"owner_gap_count": 8,
"owner_gap_count": 9,
"actionable_owner_gap_count": 0,
"stale_count": 9,
"stale_count": 10,
"actionable_stale_count": 0,
"shared_resource_count": 0,
"no_route_opportunity_count": 0,
"telemetry_report_count": 1,
"drift_signal_count": 0,
"actionable_drift_signal_count": 0,
"non_actionable_issue_count": 22
"non_actionable_issue_count": 24
},
"registry_distribution": {
"ok": true,
@@ -1181,7 +1182,7 @@
"schema_version": "2.0",
"name": "yao-meta-skill",
"version": "1.1.0",
"description": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.",
"description": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.",
"targets": [
"openai",
"claude",
@@ -1195,8 +1196,8 @@
"trust_level": "local",
"license": "MIT",
"checksums": {
"package_sha256": "db71157184dc649ee72dfcaf399204d44a366d942393d055571e0137d42c9f7c",
"archive_sha256": "c56a8519244c0bc8ec17c92d4641c832629cc059f4b51fe177a2c039515253a7"
"package_sha256": "5a99ef3133b0148cd5bbc1cd85fad4830bf34ca2bbac709f1e1fea2f810b1257",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2"
},
"compatibility": {
"openai": "pass",
@@ -1227,7 +1228,7 @@
},
"distribution": {
"archive_verified": true,
"archive_sha256": "c56a8519244c0bc8ec17c92d4641c832629cc059f4b51fe177a2c039515253a7",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"package_verification": "reports/package_verification.json",
"install_simulated": true,
"install_simulation": "reports/install_simulation.json"
@@ -1243,9 +1244,8 @@
"target_count": 4,
"adapter_count": 4,
"archive_present": true,
"archive_sha256": "c56a8519244c0bc8ec17c92d4641c832629cc059f4b51fe177a2c039515253a7",
"archive_entry_count": 580,
"nested_skill_entry_count": 0,
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"archive_entry_count": 689,
"failure_count": 0,
"warning_count": 0
},
@@ -1256,8 +1256,7 @@
"ok": true,
"summary": {
"archive_present": true,
"archive_entry_count": 598,
"nested_skill_entry_count": 0,
"archive_entry_count": 696,
"archive_extracted": true,
"entrypoint_loaded": true,
"manifest_loaded": true,
@@ -1317,19 +1316,19 @@
{
"field": "description",
"from": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes.",
"to": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs."
"to": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution."
}
],
"checksum_changes": [
{
"field": "archive_sha256",
"from": "",
"to": "c56a8519244c0bc8ec17c92d4641c832629cc059f4b51fe177a2c039515253a7"
"to": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2"
},
{
"field": "package_sha256",
"from": "0000000000000000000000000000000000000000000000000000000000000000",
"to": "db71157184dc649ee72dfcaf399204d44a366d942393d055571e0137d42c9f7c"
"to": "5a99ef3133b0148cd5bbc1cd85fad4830bf34ca2bbac709f1e1fea2f810b1257"
}
]
},
@@ -1346,14 +1345,14 @@
"ok": true,
"summary": {
"event_count": 1,
"adoption_sample_count": 1,
"activation_count": 1,
"accepted_count": 1,
"adoption_sample_count": 0,
"activation_count": 0,
"accepted_count": 0,
"edited_count": 0,
"rejected_count": 0,
"missed_count": 0,
"failed_count": 0,
"adoption_rate": 100.0,
"adoption_rate": 0,
"missed_trigger_count": 0,
"wrong_trigger_count": 0,
"bad_output_count": 0,
@@ -1362,7 +1361,7 @@
"review_overdue_count": 0,
"risk_band": "low",
"event_types": {
"skill_activation": 1
"review_event": 1
},
"failure_types": {},
"source_types": {
@@ -1637,7 +1636,7 @@
"status": "external_required",
"category": "external",
"owner": "Browser/Chrome/IDE/provider client integrator",
"current": "external source events 0; adoption samples 1",
"current": "external source events 0; adoption samples 0",
"objective": "Import production metadata-only events from a real external client into the local drift loop.",
"runbook": [
"python3 scripts/telemetry_native_host.py . --write-launcher /tmp/yao-telemetry-host.sh --write-manifest /tmp/yao-telemetry-host.json --allowed-origin chrome-extension://<extension-id>/",
@@ -1690,8 +1689,8 @@
"missing_submission_count": 4,
"invalid_submission_count": 0,
"source_check_count": 19,
"source_pass_count": 12,
"source_blocked_count": 7,
"source_pass_count": 11,
"source_blocked_count": 8,
"submitted_but_pending_count": 0,
"source_accepted_without_valid_submission_count": 1,
"overclaim_guard_active": true,
@@ -2117,7 +2116,7 @@
"status": "pending",
"source_status": "external_required",
"source_accepted": false,
"current": "external source events 0; adoption samples 1",
"current": "external source events 0; adoption samples 0",
"objective": "Import production metadata-only events from a real external client into the local drift loop.",
"runbook": [
"python3 scripts/telemetry_native_host.py . --write-launcher /tmp/yao-telemetry-host.sh --write-manifest /tmp/yao-telemetry-host.json --allowed-origin chrome-extension://<extension-id>/",
@@ -2154,7 +2153,7 @@
],
"observed_state": {
"external_source_events": 0,
"adoption_sample_count": 1,
"adoption_sample_count": 0,
"raw_content_allowed": false,
"risk_band": "low",
"accepted": false
@@ -2175,8 +2174,8 @@
"label": "Adoption sample",
"field": "adoption_sample_count",
"expected": ">0",
"actual": 1,
"status": "pass",
"actual": 0,
"status": "blocked",
"source_accepted": false,
"next_action": "Telemetry must include adoption outcome evidence."
},
@@ -2192,8 +2191,8 @@
}
],
"source_check_count": 3,
"source_pass_count": 2,
"source_blocked_count": 1,
"source_pass_count": 1,
"source_blocked_count": 2,
"submission_state": {
"status": "missing",
"path": "evidence/world_class/submissions/native-client-telemetry.json",
@@ -2223,7 +2222,7 @@
},
"synthesis_highlights": [
"Borrow progressive disclosure: keep the entrypoint lean and move depth into references or scripts.",
"Borrow a small hypothesis-test-learn loop so the first revision is evidence-backed.",
"Borrow a review checkpoint wherever trust matters more than raw speed.",
"Borrow the discipline of defining what the skill should not own before growing the package."
],
"artifact_design": {
+5 -5
View File
@@ -135,13 +135,13 @@ Next move: add real client or installer permission enforcement integration.
| Output Eval | `5` cases, DeepSeek provider-backed execution for `10 / 10` variants, with-skill pass rate `43.67`, baseline pass rate `23.67`, delta `20.0`, with file-backed, near-neighbor, boundary coverage, `10` command execution runs, `0` recorded fixture runs, `10` provider model-executed runs in root release evidence, `10` observed token rows, `0` estimated token rows, provider runner v0 available, `5` blind A/B review pairs, a generated `reports/output_review_decisions.json` template, `0 / 5` reviewer decisions pending, `0` answer keys revealed, and `5` pending answers hidden |
| Runtime Conformance | `5 / 5` targets passing |
| Target Compiler | `5 / 5` compiled target contracts generated for OpenAI, Claude, generic, Agent Skills compatible, and VS Code / Copilot outputs, including target permission contracts and target-native behavior contracts |
| Trust | `0` secret findings, `1` pinned dependency file, `69` declared internal modules, `3 / 3` network-capable scripts covered by bounded host policy, `86 / 86` CLI help smoke checks passing across `155` scripts, source-contract hash scope explicit |
| Trust | `0` secret findings, `1` pinned dependency file, `67` declared internal modules, `3 / 3` network-capable scripts covered by bounded host policy, `86 / 86` CLI help smoke checks passing across `153` scripts, source-contract hash scope explicit |
| Permission Governance | `3 / 3` required high-permission capabilities approved, `0` missing, `0` invalid, `0` expired |
| Runtime Permission Probes | `4 / 4` target adapters probed, `0` native-enforcement adapters, `4` explicit metadata fallbacks, `4` residual risks retained for reviewer visibility |
| Skill Atlas | `12` scanned skills, `1` actionable root skill, `1` telemetry report, `0` actionable route collisions, `0` actionable owner gaps, `0` actionable stale skills, `0` actionable drift signals, `24` scoped non-actionable issue signals retained for visibility |
| Registry Audit | package metadata generated with version, owner, license, source checksum, archive checksum, Skill IR provenance, and compatibility matrix |
| Package Verification | `4 / 4` target adapters present, archive verified, `580` zip entries, `0` nested SKILL.md entries, `0` failures, `0` warnings |
| Install Simulation | archive with `580` entries extracted into a local verification root, `0` nested SKILL.md entries, entrypoint/manifest/interface loaded, reports present, `4` adapters readable, `12` installer permission checks enforced, `0` permission failures, `0` failures, `0` warnings |
| Package Verification | `4 / 4` target adapters present, archive verified, `689` zip entries, `0` failures, `0` warnings |
| Install Simulation | archive with `689` entries extracted into a local verification root, entrypoint/manifest/interface loaded, reports present, `4` adapters readable, `12` installer permission checks enforced, `0` permission failures, `0` failures, `0` warnings |
| Local Install Sync Preflight | `make sync-local-install` and `make sync-active-install` rebuild the package first, then sync only after install simulation passes with `12` enforced installer permission checks and `0` permission failures |
| Upgrade Check | current package declares `minor` over the 1.0.0 baseline, recommended bump is `minor`, and release notes include added targets plus checksum changes |
| Adoption Drift | `1` metadata-only review event, `1` adoption sample, adoption `100`, risk band `low`; optional `yao.py` CLI capture, external client `telemetry-emit`, `5` `telemetry-hooks` recipes, Browser/Chrome native messaging host, and validated external JSONL import are available but off by default for reproducible release evidence; raw `reports/telemetry_events.jsonl` is gitignored and blocked from zip packages |
@@ -153,8 +153,8 @@ Next move: add real client or installer permission enforcement integration.
| World-Class Evidence Ledger | `4` evidence entries remain pending: `1` human-required and `3` external-required; anti-overclaim guards block planned work, metadata fallbacks, pending review, and local command runners from counting as completion |
| Benchmark Reproducibility | local reproducibility ready with `25` required artifacts, `0` missing artifacts, `23` reproduction commands, and `3` disclosed failure cases; human review, native permission enforcement, native telemetry, and provider ledger approval remain explicit limitations |
| IR-first Packaging | `openai`, `claude`, `generic`, and `vscode` adapters include compiler contracts, permission contracts, target-native behavior contracts, IR provenance, semantic parity checks, and install-scope notes where applicable |
| Context Budget | initial load `987/1000`; deferred `530167/120000`; resource governance governed |
| CI | `make ci-test` target count is `83` after adding the dedicated Operator UX verifier |
| Context Budget | initial load `998/1000`; deferred `512782/120000`; resource governance governed |
| CI | `make ci-test` target count is `82` after the dedicated CLI world-class verifier split |
## Next Highest-Leverage Moves
+12 -12
View File
@@ -761,7 +761,7 @@
<p class="eyebrow"><span data-lang="zh-CN">YAO Skill 生成审计报告</span><span data-lang="en">YAO Skill Generation Audit</span></p>
<p class="slug">yao-meta-skill</p>
<h1 id="report-title"><span data-lang="zh-CN">技能审计报告</span><span data-lang="en">Yao Meta Skill Audit Report</span></h1>
<p class="lead"><span data-lang="zh-CN">这份报告默认使用中文简体,把新 Skill 的定位、指标、原理、契约、质量、风险、资产和迭代路线整理为一份可审计的 HTML 报告。</span><span data-lang="en">Skill-specific source text is authored in Chinese; switch to Simplified Chinese for the exact wording.</span></p>
<p class="lead"><span data-lang="zh-CN">这份报告默认使用中文简体,把新 Skill 的定位、指标、原理、契约、质量、风险、资产和迭代路线整理为一份可审计的 HTML 报告。</span><span data-lang="en">Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.</span></p>
<div class="hero-meta"><span><span data-lang="zh-CN">技能名称:yao-meta-skill</span><span data-lang="en">Skill name: yao-meta-skill</span></span><span><span data-lang="zh-CN">成熟度:治理</span><span data-lang="en">Maturity: governed</span></span><span><span data-lang="zh-CN">格式:Agent Skills</span><span data-lang="en">Format: agent-skills</span></span><span><span data-lang="zh-CN">更新时间:2026-03-31</span><span data-lang="en">Updated: 2026-03-31</span></span></div>
<div class="badges"><span><span data-lang="zh-CN">openai</span><span data-lang="en">openai</span></span><span><span data-lang="zh-CN">claude</span><span data-lang="en">claude</span></span><span><span data-lang="zh-CN">generic</span><span data-lang="en">generic</span></span><span><span data-lang="zh-CN">vscode</span><span data-lang="en">vscode</span></span></div>
</div>
@@ -770,7 +770,7 @@
<ul class="list"><li><span data-lang="zh-CN">把一次性经验沉淀为可复用、可评估、可迁移的 Skill 包体。</span><span data-lang="en">Turn one-off experience into a reusable, evaluable, and portable skill package.</span></li><li><span data-lang="zh-CN">Skill 作者、复用团队和后续 reviewer。</span><span data-lang="en">Skill authors, reuse teams, and later reviewers.</span></li><li><span data-lang="zh-CN">创建完成后建议先打开 reports/skill-overview.html,再继续扩展包体。</span><span data-lang="en">After creation, open reports/skill-overview.html before expanding the package further.</span></li></ul>
</aside>
</div>
<div class="score-strip" aria-label="报告关键指标"><article class='score-chip'><span><span data-lang="zh-CN">完整度</span><span data-lang="en">Completeness</span></span><strong>100</strong><i style='--score:100%'></i><small><span data-lang="zh-CN">SKILL.md 已存在,是 Skill 的入口。</span><span data-lang="en">SKILL.md exists and acts as the skill entrypoint.</span></small></article><article class='score-chip'><span><span data-lang="zh-CN">触发清晰</span><span data-lang="en">Trigger clarity</span></span><strong>100</strong><i style='--score:100%'></i><small><span data-lang="zh-CN">frontmatter description 已存在,具备基础路由面。</span><span data-lang="en">The frontmatter description exists, giving the skill a basic routing surface.</span></small></article><article class='score-chip'><span><span data-lang="zh-CN">证据充分</span><span data-lang="en">Evidence depth</span></span><strong>100</strong><i style='--score:100%'></i><small><span data-lang="zh-CN">已生成 20 / 20 类报告证据。</span><span data-lang="en">Generated 20 / 20 evidence report types.</span></small></article><article class='score-chip'><span><span data-lang="zh-CN">上下文成本</span><span data-lang="en">Context cost</span></span><strong>42</strong><i style='--score:42%'></i><small><span data-lang="zh-CN">入口约 314 个词/字,references 约 16934 个词/字。</span><span data-lang="en">Entrypoint is about 314 words/characters; references are about 16934.</span></small></article></div>
<div class="score-strip" aria-label="报告关键指标"><article class='score-chip'><span><span data-lang="zh-CN">完整度</span><span data-lang="en">Completeness</span></span><strong>100</strong><i style='--score:100%'></i><small><span data-lang="zh-CN">SKILL.md 已存在,是 Skill 的入口。</span><span data-lang="en">SKILL.md exists and acts as the skill entrypoint.</span></small></article><article class='score-chip'><span><span data-lang="zh-CN">触发清晰</span><span data-lang="en">Trigger clarity</span></span><strong>100</strong><i style='--score:100%'></i><small><span data-lang="zh-CN">frontmatter description 已存在,具备基础路由面。</span><span data-lang="en">The frontmatter description exists, giving the skill a basic routing surface.</span></small></article><article class='score-chip'><span><span data-lang="zh-CN">证据充分</span><span data-lang="en">Evidence depth</span></span><strong>100</strong><i style='--score:100%'></i><small><span data-lang="zh-CN">已生成 20 / 20 类报告证据。</span><span data-lang="en">Generated 20 / 20 evidence report types.</span></small></article><article class='score-chip'><span><span data-lang="zh-CN">上下文成本</span><span data-lang="en">Context cost</span></span><strong>42</strong><i style='--score:42%'></i><small><span data-lang="zh-CN">入口约 339 个词/字,references 约 16934 个词/字。</span><span data-lang="en">Entrypoint is about 339 words/characters; references are about 16934.</span></small></article></div>
</section>
<section id="overview">
@@ -782,7 +782,7 @@
<div class="two-col">
<article class="panel">
<h3><span data-lang="zh-CN">作用定位</span><span data-lang="en">Role</span></h3>
<ul class="list"><li><span data-lang="zh-CN">Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.</span><span data-lang="en">Skill-specific source text is authored in Chinese; switch to Simplified Chinese for the exact wording.</span></li><li><span data-lang="zh-CN">把一次性经验沉淀为可复用、可评估、可迁移的 Skill 包体。</span><span data-lang="en">Turn one-off experience into a reusable, evaluable, and portable skill package.</span></li><li><span data-lang="zh-CN">交付结果:SKILL.md, agents/interface.yaml, skill-ir/examples/yao-meta-skill.json, reports/compiled_targets.md, reports/output_quality_scorecard.md, reports/output_execution_runs.md, reports/output_blind_review_pack.md, reports/output_review_kit.md, reports/output_review_adjudication.md, reports/benchmark_reproducibility.md, reports/output_blind_answer_key.json, reports/conformance_matrix.md, reports/security_trust_report.md, reports/runtime_permission_probes.md, reports/skill_atlas.html, reports/registry_audit.md, reports/package_verification.md, reports/install_simulation.md, reports/upgrade_check.md, reports/adoption_drift_report.md, reports/review_waivers.md, reports/world_class_evidence_plan.md, reports/world_class_evidence_ledger.md, reports/review_annotations.md, reports/review-studio.html, reports/skill-interpretation.html, reports/skill-overview.html</span><span data-lang="en">Deliverables: SKILL.md, agents/interface.yaml, skill-ir/examples/yao-meta-skill.json, reports/compiled_targets.md, reports/output_quality_scorecard.md, reports/output_execution_runs.md, reports/output_blind_review_pack.md, reports/output_review_kit.md, reports/output_review_adjudication.md, reports/benchmark_reproducibility.md, reports/output_blind_answer_key.json, reports/conformance_matrix.md, reports/security_trust_report.md, reports/runtime_permission_probes.md, reports/skill_atlas.html, reports/registry_audit.md, reports/package_verification.md, reports/install_simulation.md, reports/upgrade_check.md, reports/adoption_drift_report.md, reports/review_waivers.md, reports/world_class_evidence_plan.md, reports/world_class_evidence_ledger.md, reports/review_annotations.md, reports/review-studio.html, reports/skill-interpretation.html, reports/skill-overview.html</span></li></ul>
<ul class="list"><li><span data-lang="zh-CN">原始说明可切换到英文查看;默认中文报告保留结论与结构说明。</span><span data-lang="en">Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.</span></li><li><span data-lang="zh-CN">把一次性经验沉淀为可复用、可评估、可迁移的 Skill 包体。</span><span data-lang="en">Turn one-off experience into a reusable, evaluable, and portable skill package.</span></li><li><span data-lang="zh-CN">交付结果:SKILL.md, agents/interface.yaml, skill-ir/examples/yao-meta-skill.json, reports/compiled_targets.md, reports/output_quality_scorecard.md, reports/output_execution_runs.md, reports/output_blind_review_pack.md, reports/output_review_kit.md, reports/output_review_adjudication.md, reports/benchmark_reproducibility.md, reports/output_blind_answer_key.json, reports/conformance_matrix.md, reports/security_trust_report.md, reports/runtime_permission_probes.md, reports/skill_atlas.html, reports/registry_audit.md, reports/package_verification.md, reports/install_simulation.md, reports/upgrade_check.md, reports/adoption_drift_report.md, reports/review_waivers.md, reports/world_class_evidence_plan.md, reports/world_class_evidence_ledger.md, reports/review_annotations.md, reports/review-studio.html, reports/skill-interpretation.html, reports/skill-overview.html</span><span data-lang="en">Deliverables: SKILL.md, agents/interface.yaml, skill-ir/examples/yao-meta-skill.json, reports/compiled_targets.md, reports/output_quality_scorecard.md, reports/output_execution_runs.md, reports/output_blind_review_pack.md, reports/output_review_kit.md, reports/output_review_adjudication.md, reports/benchmark_reproducibility.md, reports/output_blind_answer_key.json, reports/conformance_matrix.md, reports/security_trust_report.md, reports/runtime_permission_probes.md, reports/skill_atlas.html, reports/registry_audit.md, reports/package_verification.md, reports/install_simulation.md, reports/upgrade_check.md, reports/adoption_drift_report.md, reports/review_waivers.md, reports/world_class_evidence_plan.md, reports/world_class_evidence_ledger.md, reports/review_annotations.md, reports/review-studio.html, reports/skill-interpretation.html, reports/skill-overview.html</span></li></ul>
</article>
<figure class="chart-figure" data-chart="flow"><svg viewBox="0 0 620 170" role="img" aria-label="交付流程"><text data-lang="zh-CN" x="20" y="28" class="chart-title">交付流程</text><text data-lang="en" x="20" y="28" class="chart-title">Delivery Flow</text><path d="M188 93 H248 M398 93 H458" class="chart-line"/><g><rect x="38" y="56" width="150" height="74" rx="8" fill="#F6F8FB" stroke="#e8e6dc"/><text data-lang="zh-CN" x="113" y="99" text-anchor="middle">输入材料</text><text data-lang="en" x="113" y="99" text-anchor="middle">Input material</text></g><g><rect x="248" y="56" width="150" height="74" rx="8" fill="#F6F8FB" stroke="#e8e6dc"/><text data-lang="zh-CN" x="323" y="99" text-anchor="middle">Skill 包体</text><text data-lang="en" x="323" y="99" text-anchor="middle">Skill package</text></g><g><rect x="458" y="56" width="150" height="74" rx="8" fill="#F6F8FB" stroke="#e8e6dc"/><text data-lang="zh-CN" x="533" y="99" text-anchor="middle">可复用能力</text><text data-lang="en" x="533" y="99" text-anchor="middle">Reusable capability</text></g></svg><figcaption><span data-lang="zh-CN">交付流程把用户输入、生成的包体和可复用能力放在一条线上。</span><span data-lang="en">The delivery flow places user input, generated package, and reusable capability on one path.</span></figcaption></figure>
</div>
@@ -807,12 +807,12 @@
<article class="panel metrics-note metrics-summary-panel">
<h3><span data-lang="zh-CN">成熟度条</span><span data-lang="en">Maturity Bar</span></h3>
<p><span data-lang="zh-CN">这里把每个指标压缩为状态、分数和第一条证据,先给出整体判断,再进入下方明细。</span><span data-lang="en">This compresses each metric into status, score, and the first evidence item before the detailed cards below.</span></p>
<ol class='metric-summary-list'><li><span class='metric-status'><span data-lang="zh-CN">稳定</span><span data-lang="en">Stable</span></span><b><span data-lang="zh-CN">完整度</span><span data-lang="en">Completeness</span></b><em>100</em><small><span data-lang="zh-CN">SKILL.md 已存在,是 Skill 的入口。</span><span data-lang="en">SKILL.md exists and acts as the skill entrypoint.</span></small></li><li><span class='metric-status'><span data-lang="zh-CN">稳定</span><span data-lang="en">Stable</span></span><b><span data-lang="zh-CN">触发清晰</span><span data-lang="en">Trigger clarity</span></b><em>100</em><small><span data-lang="zh-CN">frontmatter description 已存在,具备基础路由面。</span><span data-lang="en">The frontmatter description exists, giving the skill a basic routing surface.</span></small></li><li><span class='metric-status'><span data-lang="zh-CN">稳定</span><span data-lang="en">Stable</span></span><b><span data-lang="zh-CN">证据充分</span><span data-lang="en">Evidence depth</span></b><em>100</em><small><span data-lang="zh-CN">已生成 20 / 20 类报告证据。</span><span data-lang="en">Generated 20 / 20 evidence report types.</span></small></li><li><span class='metric-status'><span data-lang="zh-CN">稳定</span><span data-lang="en">Stable</span></span><b><span data-lang="zh-CN">可维护性</span><span data-lang="en">Maintainability</span></b><em>100</em><small><span data-lang="zh-CN">SKILL.md 约 314 个词/字。</span><span data-lang="en">SKILL.md is about 314 words/characters.</span></small></li><li><span class='metric-status'><span data-lang="zh-CN">稳定</span><span data-lang="en">Stable</span></span><b><span data-lang="zh-CN">可迁移性</span><span data-lang="en">Portability</span></b><em>100</em><small><span data-lang="zh-CN">agents/interface.yaml 已存在。</span><span data-lang="en">agents/interface.yaml exists.</span></small></li><li><span class='metric-status'><span data-lang="zh-CN">关注</span><span data-lang="en">Watch</span></span><b><span data-lang="zh-CN">上下文成本</span><span data-lang="en">Context cost</span></b><em>42</em><small><span data-lang="zh-CN">入口约 314 个词/字,references 约 16934 个词/字。</span><span data-lang="en">Entrypoint is about 314 words/characters; references are about 16934.</span></small></li></ol>
<ol class='metric-summary-list'><li><span class='metric-status'><span data-lang="zh-CN">稳定</span><span data-lang="en">Stable</span></span><b><span data-lang="zh-CN">完整度</span><span data-lang="en">Completeness</span></b><em>100</em><small><span data-lang="zh-CN">SKILL.md 已存在,是 Skill 的入口。</span><span data-lang="en">SKILL.md exists and acts as the skill entrypoint.</span></small></li><li><span class='metric-status'><span data-lang="zh-CN">稳定</span><span data-lang="en">Stable</span></span><b><span data-lang="zh-CN">触发清晰</span><span data-lang="en">Trigger clarity</span></b><em>100</em><small><span data-lang="zh-CN">frontmatter description 已存在,具备基础路由面。</span><span data-lang="en">The frontmatter description exists, giving the skill a basic routing surface.</span></small></li><li><span class='metric-status'><span data-lang="zh-CN">稳定</span><span data-lang="en">Stable</span></span><b><span data-lang="zh-CN">证据充分</span><span data-lang="en">Evidence depth</span></b><em>100</em><small><span data-lang="zh-CN">已生成 20 / 20 类报告证据。</span><span data-lang="en">Generated 20 / 20 evidence report types.</span></small></li><li><span class='metric-status'><span data-lang="zh-CN">稳定</span><span data-lang="en">Stable</span></span><b><span data-lang="zh-CN">可维护性</span><span data-lang="en">Maintainability</span></b><em>100</em><small><span data-lang="zh-CN">SKILL.md 约 339 个词/字。</span><span data-lang="en">SKILL.md is about 339 words/characters.</span></small></li><li><span class='metric-status'><span data-lang="zh-CN">稳定</span><span data-lang="en">Stable</span></span><b><span data-lang="zh-CN">可迁移性</span><span data-lang="en">Portability</span></b><em>100</em><small><span data-lang="zh-CN">agents/interface.yaml 已存在。</span><span data-lang="en">agents/interface.yaml exists.</span></small></li><li><span class='metric-status'><span data-lang="zh-CN">关注</span><span data-lang="en">Watch</span></span><b><span data-lang="zh-CN">上下文成本</span><span data-lang="en">Context cost</span></b><em>42</em><small><span data-lang="zh-CN">入口约 339 个词/字,references 约 16934 个词/字。</span><span data-lang="en">Entrypoint is about 339 words/characters; references are about 16934.</span></small></li></ol>
</article>
</div>
<div class="metric-detail-section">
<div class="detail-section-kicker"><span data-lang="zh-CN">指标明细</span><span data-lang="en">Metric Details</span></div>
<div class="metric-grid metric-detail-grid"><article class='metric-card'><div class='metric-card-head'><span class='metric-label'><span data-lang="zh-CN">完整度</span><span data-lang="en">Completeness</span></span><strong>100</strong></div><div class='metric-card-body'><ul class="compact-list"><li><span data-lang="zh-CN">SKILL.md 已存在,是 Skill 的入口。</span><span data-lang="en">SKILL.md exists and acts as the skill entrypoint.</span></li><li><span data-lang="zh-CN">README.md 已存在,便于人工阅读。</span><span data-lang="en">README.md exists for human-readable usage.</span></li><li><span data-lang="zh-CN">agents/interface.yaml 已存在,便于跨平台适配。</span><span data-lang="en">agents/interface.yaml exists for cross-platform adaptation.</span></li></ul></div></article><article class='metric-card'><div class='metric-card-head'><span class='metric-label'><span data-lang="zh-CN">触发清晰</span><span data-lang="en">Trigger clarity</span></span><strong>100</strong></div><div class='metric-card-body'><ul class="compact-list"><li><span data-lang="zh-CN">frontmatter description 已存在,具备基础路由面。</span><span data-lang="en">The frontmatter description exists, giving the skill a basic routing surface.</span></li><li><span data-lang="zh-CN">description 有足够长度说明任务边界。</span><span data-lang="en">The description is long enough to explain the task boundary.</span></li><li><span data-lang="zh-CN">description 已包含使用场景或排除边界信号。</span><span data-lang="en">The description includes usage-scenario or exclusion-boundary signals.</span></li></ul></div></article><article class='metric-card'><div class='metric-card-head'><span class='metric-label'><span data-lang="zh-CN">证据充分</span><span data-lang="en">Evidence depth</span></span><strong>100</strong></div><div class='metric-card-body'><ul class="compact-list"><li><span data-lang="zh-CN">已生成 20 / 20 类报告证据。</span><span data-lang="en">Generated 20 / 20 evidence report types.</span></li><li><span data-lang="zh-CN">skill-ir.json 已存在。</span><span data-lang="en">skill-ir.json exists.</span></li><li><span data-lang="zh-CN">compiled_targets.json 已存在。</span><span data-lang="en">compiled_targets.json exists.</span></li></ul></div></article><article class='metric-card'><div class='metric-card-head'><span class='metric-label'><span data-lang="zh-CN">可维护性</span><span data-lang="en">Maintainability</span></span><strong>100</strong></div><div class='metric-card-body'><ul class="compact-list"><li><span data-lang="zh-CN">SKILL.md 约 314 个词/字。</span><span data-lang="en">SKILL.md is about 314 words/characters.</span></li><li><span data-lang="zh-CN">入口文件保持克制,可维护性较好。</span><span data-lang="en">The entrypoint stays restrained, which supports maintainability.</span></li><li><span data-lang="zh-CN">references/ 已承载扩展指导。</span><span data-lang="en">references/ carries extended guidance.</span></li></ul></div></article><article class='metric-card'><div class='metric-card-head'><span class='metric-label'><span data-lang="zh-CN">可迁移性</span><span data-lang="en">Portability</span></span><strong>100</strong></div><div class='metric-card-body'><ul class="compact-list"><li><span data-lang="zh-CN">agents/interface.yaml 已存在。</span><span data-lang="en">agents/interface.yaml exists.</span></li><li><span data-lang="zh-CN">manifest.json 已存在。</span><span data-lang="en">manifest.json exists.</span></li><li><span data-lang="zh-CN">目标平台或 adapter target 已声明。</span><span data-lang="en">Target platforms or adapter targets are declared.</span></li></ul></div></article><article class='metric-card'><div class='metric-card-head'><span class='metric-label'><span data-lang="zh-CN">上下文成本</span><span data-lang="en">Context cost</span></span><strong>42</strong></div><div class='metric-card-body'><ul class="compact-list"><li><span data-lang="zh-CN">入口约 314 个词/字,references 约 16934 个词/字。</span><span data-lang="en">Entrypoint is about 314 words/characters; references are about 16934.</span></li><li><span data-lang="zh-CN">分数越高代表上下文成本越低。</span><span data-lang="en">A higher score means lower context cost.</span></li><li><span data-lang="zh-CN">上下文成本偏高,建议压缩入口或拆分 references。</span><span data-lang="en">Context cost is high; compress the entrypoint or split references further.</span></li></ul></div></article></div>
<div class="metric-grid metric-detail-grid"><article class='metric-card'><div class='metric-card-head'><span class='metric-label'><span data-lang="zh-CN">完整度</span><span data-lang="en">Completeness</span></span><strong>100</strong></div><div class='metric-card-body'><ul class="compact-list"><li><span data-lang="zh-CN">SKILL.md 已存在,是 Skill 的入口。</span><span data-lang="en">SKILL.md exists and acts as the skill entrypoint.</span></li><li><span data-lang="zh-CN">README.md 已存在,便于人工阅读。</span><span data-lang="en">README.md exists for human-readable usage.</span></li><li><span data-lang="zh-CN">agents/interface.yaml 已存在,便于跨平台适配。</span><span data-lang="en">agents/interface.yaml exists for cross-platform adaptation.</span></li></ul></div></article><article class='metric-card'><div class='metric-card-head'><span class='metric-label'><span data-lang="zh-CN">触发清晰</span><span data-lang="en">Trigger clarity</span></span><strong>100</strong></div><div class='metric-card-body'><ul class="compact-list"><li><span data-lang="zh-CN">frontmatter description 已存在,具备基础路由面。</span><span data-lang="en">The frontmatter description exists, giving the skill a basic routing surface.</span></li><li><span data-lang="zh-CN">description 有足够长度说明任务边界。</span><span data-lang="en">The description is long enough to explain the task boundary.</span></li><li><span data-lang="zh-CN">description 已包含使用场景或排除边界信号。</span><span data-lang="en">The description includes usage-scenario or exclusion-boundary signals.</span></li></ul></div></article><article class='metric-card'><div class='metric-card-head'><span class='metric-label'><span data-lang="zh-CN">证据充分</span><span data-lang="en">Evidence depth</span></span><strong>100</strong></div><div class='metric-card-body'><ul class="compact-list"><li><span data-lang="zh-CN">已生成 20 / 20 类报告证据。</span><span data-lang="en">Generated 20 / 20 evidence report types.</span></li><li><span data-lang="zh-CN">skill-ir.json 已存在。</span><span data-lang="en">skill-ir.json exists.</span></li><li><span data-lang="zh-CN">compiled_targets.json 已存在。</span><span data-lang="en">compiled_targets.json exists.</span></li></ul></div></article><article class='metric-card'><div class='metric-card-head'><span class='metric-label'><span data-lang="zh-CN">可维护性</span><span data-lang="en">Maintainability</span></span><strong>100</strong></div><div class='metric-card-body'><ul class="compact-list"><li><span data-lang="zh-CN">SKILL.md 约 339 个词/字。</span><span data-lang="en">SKILL.md is about 339 words/characters.</span></li><li><span data-lang="zh-CN">入口文件保持克制,可维护性较好。</span><span data-lang="en">The entrypoint stays restrained, which supports maintainability.</span></li><li><span data-lang="zh-CN">references/ 已承载扩展指导。</span><span data-lang="en">references/ carries extended guidance.</span></li></ul></div></article><article class='metric-card'><div class='metric-card-head'><span class='metric-label'><span data-lang="zh-CN">可迁移性</span><span data-lang="en">Portability</span></span><strong>100</strong></div><div class='metric-card-body'><ul class="compact-list"><li><span data-lang="zh-CN">agents/interface.yaml 已存在。</span><span data-lang="en">agents/interface.yaml exists.</span></li><li><span data-lang="zh-CN">manifest.json 已存在。</span><span data-lang="en">manifest.json exists.</span></li><li><span data-lang="zh-CN">目标平台或 adapter target 已声明。</span><span data-lang="en">Target platforms or adapter targets are declared.</span></li></ul></div></article><article class='metric-card'><div class='metric-card-head'><span class='metric-label'><span data-lang="zh-CN">上下文成本</span><span data-lang="en">Context cost</span></span><strong>42</strong></div><div class='metric-card-body'><ul class="compact-list"><li><span data-lang="zh-CN">入口约 339 个词/字,references 约 16934 个词/字。</span><span data-lang="en">Entrypoint is about 339 words/characters; references are about 16934.</span></li><li><span data-lang="zh-CN">分数越高代表上下文成本越低。</span><span data-lang="en">A higher score means lower context cost.</span></li><li><span data-lang="zh-CN">上下文成本偏高,建议压缩入口或拆分 references。</span><span data-lang="en">Context cost is high; compress the entrypoint or split references further.</span></li></ul></div></article></div>
</div>
</div>
</div>
@@ -845,11 +845,11 @@
<div class="two-col">
<article class="panel">
<h3><span data-lang="zh-CN">执行流程</span><span data-lang="en">Execution Flow</span></h3>
<ol class="step-list"><li><span data-lang="zh-CN">原始说明可切换到英文查看;默认中文报告保留结论与结构说明。</span><span data-lang="en">One-off/no reusable process: `Do not create a skill`; `near-neighbor`; require `repeated use` + `reusable output contract`.</span></li><li><span data-lang="zh-CN">原始说明可切换到英文查看;默认中文报告保留结论与结构说明。</span><span data-lang="en">Capture job, output, exclusions, constraints, standards, lightest fit.</span></li><li><span data-lang="zh-CN">原始说明可切换到英文查看;默认中文报告保留结论与结构说明。</span><span data-lang="en">Scan up to `3-5` references: external, user, local; skip tiny edits; surface only uncertainty/conflict.</span></li><li><span data-lang="zh-CN">原始说明可切换到英文查看;默认中文报告保留结论与结构说明。</span><span data-lang="en">Write `description` early; route/boundary edits need `trigger_eval.py`; releases need risk-matched gates before folders.</span></li><li><span data-lang="zh-CN">原始说明可切换到英文查看;默认中文报告保留结论与结构说明。</span><span data-lang="en">Add output-risk, artifact-design, prompt-quality, system-model, next directions only when earned.</span></li></ol>
<ol class="step-list"><li><span data-lang="zh-CN">原始说明可切换到英文查看;默认中文报告保留结论与结构说明。</span><span data-lang="en">For one-off/no reusable process: `Do not create a skill`; `near-neighbor`; require `repeated use` + `reusable output contract`.</span></li><li><span data-lang="zh-CN">原始说明可切换到英文查看;默认中文报告保留结论与结构说明。</span><span data-lang="en">Capture job, output, exclusions, constraints, standards, and the lightest fit.</span></li><li><span data-lang="zh-CN">原始说明可切换到英文查看;默认中文报告保留结论与结构说明。</span><span data-lang="en">Scan references in order: external benchmark, user source, local fit; surface only uncertainty or conflict.</span></li><li><span data-lang="zh-CN">原始说明可切换到英文查看;默认中文报告保留结论与结构说明。</span><span data-lang="en">Write `description` early, test route quality, then add only earned folders and gates.</span></li><li><span data-lang="zh-CN">原始说明可切换到英文查看;默认中文报告保留结论与结构说明。</span><span data-lang="en">Add output-risk, artifact-design, prompt-quality, system-model, and next directions only when useful.</span></li></ol>
</article>
<article class="panel">
<h3><span data-lang="zh-CN">调用方式</span><span data-lang="en">How To Use</span></h3>
<ol class="step-list"><li><span data-lang="zh-CN">当你需要把工作流或笔记沉淀成结构精简、触发清晰且带必要 eval 的可复用 Skill 时使用 $yao-meta-skill。</span><span data-lang="en">Use $yao-meta-skill to turn my workflow or notes into a reusable skill with lean structure, clear triggering, and the right evals.</span></li><li><span data-lang="zh-CN">Use this skill when the request matches: Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.</span><span data-lang="en">Use this skill when the request matches the frontmatter description.</span></li></ol>
<ol class="step-list"><li><span data-lang="zh-CN">当你需要把工作流或笔记沉淀成结构精简、触发清晰且带必要 eval 的可复用 Skill 时使用 $yao-meta-skill。</span><span data-lang="en">Use $yao-meta-skill to turn my workflow or notes into a reusable skill with lean structure, clear triggering, and the right evals.</span></li><li><span data-lang="zh-CN">当用户请求与该 Skill 的触发描述匹配时使用。</span><span data-lang="en">Use this skill when the request matches the frontmatter description.</span></li></ol>
</article>
</div>
</div>
@@ -865,7 +865,7 @@
<div class="two-col">
<article class="panel">
<h3><span data-lang="zh-CN">触发描述</span><span data-lang="en">Trigger</span></h3>
<p><span data-lang="zh-CN">Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.</span><span data-lang="en">Skill-specific source text is authored in Chinese; switch to Simplified Chinese for the exact wording.</span></p>
<p><span data-lang="zh-CN">该 Skill 的触发描述来自 SKILL.md frontmatter;默认中文报告先呈现能力边界,原始英文描述可切换到英文查看。</span><span data-lang="en">Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.</span></p>
<h3><span data-lang="zh-CN">输入材料</span><span data-lang="en">Inputs</span></h3>
<ul class="list"><li><span data-lang="zh-CN">原始说明可切换到英文查看;默认中文报告保留结论与结构说明。</span><span data-lang="en">rough workflow notes, SOPs, runbooks, prompts, transcripts, documents, or repeated task descriptions</span></li><li><span data-lang="zh-CN">原始说明可切换到英文查看;默认中文报告保留结论与结构说明。</span><span data-lang="en">an existing skill directory that needs refactor, evaluation, packaging, or governance hardening</span></li><li><span data-lang="zh-CN">原始说明可切换到英文查看;默认中文报告保留结论与结构说明。</span><span data-lang="en">target platform requirements such as OpenAI, Claude, generic Agent Skills, or team distribution</span></li><li><span data-lang="zh-CN">原始说明可切换到英文查看;默认中文报告保留结论与结构说明。</span><span data-lang="en">benchmark references, local constraints, desired maturity tier, and review standards</span></li></ul>
</article>
@@ -888,7 +888,7 @@
<div>
<table>
<thead><tr><th><span data-lang="zh-CN">类型</span><span data-lang="en">Type</span></th><th><span data-lang="zh-CN">证据</span><span data-lang="en">Evidence</span></th><th><span data-lang="zh-CN">建议</span><span data-lang="en">Action</span></th></tr></thead>
<tbody><tr><td><span data-lang="zh-CN">强项</span><span data-lang="en">Strength</span></td><td><span data-lang="zh-CN">触发面保持精简,并锚定在 frontmatter description。</span><span data-lang="en">The trigger surface stays lean and anchored in the frontmatter description.</span></td><td><span data-lang="zh-CN">保留并复用</span><span data-lang="en">Keep</span></td></tr><tr><td><span data-lang="zh-CN">强项</span><span data-lang="en">Strength</span></td><td><span data-lang="zh-CN">已生成 Skill IR,核心语义可先于平台打包被审查和迁移。</span><span data-lang="en">Skill IR is generated so core semantics can be reviewed and migrated before platform packaging.</span></td><td><span data-lang="zh-CN">保留并复用</span><span data-lang="en">Keep</span></td></tr><tr><td><span data-lang="zh-CN">强项</span><span data-lang="en">Strength</span></td><td><span data-lang="zh-CN">已生成目标编译报告,可审查 IR 到 OpenAI、Claude、generic 等目标契约的映射。</span><span data-lang="en">Target compilation evidence is generated to review how IR maps to OpenAI, Claude, generic, and other target contracts.</span></td><td><span data-lang="zh-CN">保留并复用</span><span data-lang="en">Keep</span></td></tr><tr><td><span data-lang="zh-CN">缺口</span><span data-lang="en">Gap</span></td><td><span data-lang="zh-CN">上下文成本需要补强:入口约 314 个词/字,references 约 16934 个词/字。</span><span data-lang="en">Context cost needs improvement: Entrypoint is about 314 words/characters; references are about 16934.</span></td><td><span data-lang="zh-CN">纳入下一轮修复</span><span data-lang="en">Fix next</span></td></tr></tbody>
<tbody><tr><td><span data-lang="zh-CN">强项</span><span data-lang="en">Strength</span></td><td><span data-lang="zh-CN">触发面保持精简,并锚定在 frontmatter description。</span><span data-lang="en">The trigger surface stays lean and anchored in the frontmatter description.</span></td><td><span data-lang="zh-CN">保留并复用</span><span data-lang="en">Keep</span></td></tr><tr><td><span data-lang="zh-CN">强项</span><span data-lang="en">Strength</span></td><td><span data-lang="zh-CN">已生成 Skill IR,核心语义可先于平台打包被审查和迁移。</span><span data-lang="en">Skill IR is generated so core semantics can be reviewed and migrated before platform packaging.</span></td><td><span data-lang="zh-CN">保留并复用</span><span data-lang="en">Keep</span></td></tr><tr><td><span data-lang="zh-CN">强项</span><span data-lang="en">Strength</span></td><td><span data-lang="zh-CN">已生成目标编译报告,可审查 IR 到 OpenAI、Claude、generic 等目标契约的映射。</span><span data-lang="en">Target compilation evidence is generated to review how IR maps to OpenAI, Claude, generic, and other target contracts.</span></td><td><span data-lang="zh-CN">保留并复用</span><span data-lang="en">Keep</span></td></tr><tr><td><span data-lang="zh-CN">缺口</span><span data-lang="en">Gap</span></td><td><span data-lang="zh-CN">上下文成本需要补强:入口约 339 个词/字,references 约 16934 个词/字。</span><span data-lang="en">Context cost needs improvement: Entrypoint is about 339 words/characters; references are about 16934.</span></td><td><span data-lang="zh-CN">纳入下一轮修复</span><span data-lang="en">Fix next</span></td></tr></tbody>
</table>
<div class="two-col quality-panels">
<article class="panel">
@@ -925,11 +925,11 @@
<div>
<table>
<thead><tr><th><span data-lang="zh-CN">风险</span><span data-lang="en">Risk</span></th><th><span data-lang="zh-CN">信号</span><span data-lang="en">Signal</span></th><th><span data-lang="zh-CN">应对</span><span data-lang="en">Response</span></th></tr></thead>
<tbody><tr><td><span data-lang="zh-CN">误触发风险</span><span data-lang="en">Trigger risk</span></td><td><span data-lang="zh-CN">frontmatter description 已存在,具备基础路由面。</span><span data-lang="en">The frontmatter description exists, giving the skill a basic routing surface.</span></td><td><span data-lang="zh-CN">先补证据和边界,再增加包体复杂度。</span><span data-lang="en">Improve evidence and boundaries before adding package complexity.</span></td></tr><tr><td><span data-lang="zh-CN">输出漂移风险</span><span data-lang="en">Output drift risk</span></td><td><span data-lang="zh-CN">已生成 20 / 20 类报告证据。</span><span data-lang="en">Generated 20 / 20 evidence report types.</span></td><td><span data-lang="zh-CN">先补证据和边界,再增加包体复杂度。</span><span data-lang="en">Improve evidence and boundaries before adding package complexity.</span></td></tr><tr><td><span data-lang="zh-CN">证据不足风险</span><span data-lang="en">Evidence gap risk</span></td><td><span data-lang="zh-CN">已生成 20 / 20 类报告证据。</span><span data-lang="en">Generated 20 / 20 evidence report types.</span></td><td><span data-lang="zh-CN">先补证据和边界,再增加包体复杂度。</span><span data-lang="en">Improve evidence and boundaries before adding package complexity.</span></td></tr><tr><td><span data-lang="zh-CN">包体膨胀风险</span><span data-lang="en">Package bloat risk</span></td><td><span data-lang="zh-CN">SKILL.md 约 314 个词/字。</span><span data-lang="en">SKILL.md is about 314 words/characters.</span></td><td><span data-lang="zh-CN">先补证据和边界,再增加包体复杂度。</span><span data-lang="en">Improve evidence and boundaries before adding package complexity.</span></td></tr><tr><td><span data-lang="zh-CN">跨平台迁移风险</span><span data-lang="en">Portability risk</span></td><td><span data-lang="zh-CN">agents/interface.yaml 已存在。</span><span data-lang="en">agents/interface.yaml exists.</span></td><td><span data-lang="zh-CN">先补证据和边界,再增加包体复杂度。</span><span data-lang="en">Improve evidence and boundaries before adding package complexity.</span></td></tr></tbody>
<tbody><tr><td><span data-lang="zh-CN">误触发风险</span><span data-lang="en">Trigger risk</span></td><td><span data-lang="zh-CN">frontmatter description 已存在,具备基础路由面。</span><span data-lang="en">The frontmatter description exists, giving the skill a basic routing surface.</span></td><td><span data-lang="zh-CN">先补证据和边界,再增加包体复杂度。</span><span data-lang="en">Improve evidence and boundaries before adding package complexity.</span></td></tr><tr><td><span data-lang="zh-CN">输出漂移风险</span><span data-lang="en">Output drift risk</span></td><td><span data-lang="zh-CN">已生成 20 / 20 类报告证据。</span><span data-lang="en">Generated 20 / 20 evidence report types.</span></td><td><span data-lang="zh-CN">先补证据和边界,再增加包体复杂度。</span><span data-lang="en">Improve evidence and boundaries before adding package complexity.</span></td></tr><tr><td><span data-lang="zh-CN">证据不足风险</span><span data-lang="en">Evidence gap risk</span></td><td><span data-lang="zh-CN">已生成 20 / 20 类报告证据。</span><span data-lang="en">Generated 20 / 20 evidence report types.</span></td><td><span data-lang="zh-CN">先补证据和边界,再增加包体复杂度。</span><span data-lang="en">Improve evidence and boundaries before adding package complexity.</span></td></tr><tr><td><span data-lang="zh-CN">包体膨胀风险</span><span data-lang="en">Package bloat risk</span></td><td><span data-lang="zh-CN">SKILL.md 约 339 个词/字。</span><span data-lang="en">SKILL.md is about 339 words/characters.</span></td><td><span data-lang="zh-CN">先补证据和边界,再增加包体复杂度。</span><span data-lang="en">Improve evidence and boundaries before adding package complexity.</span></td></tr><tr><td><span data-lang="zh-CN">跨平台迁移风险</span><span data-lang="en">Portability risk</span></td><td><span data-lang="zh-CN">agents/interface.yaml 已存在。</span><span data-lang="en">agents/interface.yaml exists.</span></td><td><span data-lang="zh-CN">先补证据和边界,再增加包体复杂度。</span><span data-lang="en">Improve evidence and boundaries before adding package complexity.</span></td></tr></tbody>
</table>
</div>
</div>
<article class='panel world-readiness'><div class='world-readiness-head'><div><h3><span data-lang="zh-CN">世界证据</span><span data-lang="en">World Evidence</span></h3><p><span data-lang="zh-CN">世界级证据尚未完成:4 项待补,0 项已接受。</span><span data-lang="en">World-class evidence is not complete: 4 pending, 0 accepted.</span></p></div><span class='world-status'><span data-lang="zh-CN">证据待补</span><span data-lang="en">Evidence pending</span></span></div><div class='evidence-kpis'><article class='evidence-kpi'><span><span data-lang="zh-CN">待补证据</span><span data-lang="en">Pending</span></span><strong>4</strong><small><span data-lang="zh-CN">仍需外部或人工证据接受。</span><span data-lang="en">External or human evidence still needs acceptance.</span></small></article><article class='evidence-kpi'><span><span data-lang="zh-CN">已接受</span><span data-lang="en">Accepted</span></span><strong>0</strong><small><span data-lang="zh-CN">已通过 source check 与提交契约。</span><span data-lang="en">Passed source checks and submission contract.</span></small></article><article class='evidence-kpi'><span><span data-lang="zh-CN">源检查</span><span data-lang="en">Source Checks</span></span><strong>12 / 19</strong><small><span data-lang="zh-CN">通过数 / 总检查数。</span><span data-lang="en">Passed checks / total checks.</span></small></article></div><div class='evidence-list'><article class='evidence-item'><div><span><span data-lang="zh-CN">外部证据</span><span data-lang="en">External evidence</span></span><h4><span data-lang="zh-CN">提供商留出</span><span data-lang="en">Provider Holdout</span></h4></div><p><span data-lang="zh-CN">缺少真实 provider 模型运行和 token metadata。</span><span data-lang="en">Missing a real provider model run and token metadata.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><p class='blocked-checks-empty'><span data-lang="zh-CN">当前没有阻塞检查。</span><span data-lang="en">No blocked checks right now.</span></p></article><article class='evidence-item'><div><span><span data-lang="zh-CN">人工证据</span><span data-lang="en">Human evidence</span></span><h4><span data-lang="zh-CN">人工盲评</span><span data-lang="en">Human Adjudication</span></h4></div><p><span data-lang="zh-CN">盲评 pair 仍待真实 reviewer 决策。</span><span data-lang="en">Blind-review pairs still need real reviewer decisions.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><ul class='blocked-checks'><li><span data-lang="zh-CN">无待判定</span><span data-lang="en">No pending decisions</span></li><li><span data-lang="zh-CN">盲评完成</span><span data-lang="en">Judgments complete</span></li><li><span data-lang="zh-CN">Reviewer metadata</span><span data-lang="en">Reviewer metadata</span></li></ul></article><article class='evidence-item'><div><span><span data-lang="zh-CN">外部证据</span><span data-lang="en">External evidence</span></span><h4><span data-lang="zh-CN">原生权限</span><span data-lang="en">Native Permission</span></h4></div><p><span data-lang="zh-CN">原生 runtime enforcement 仍待目标客户端或外部安装器证明。</span><span data-lang="en">Native runtime enforcement still needs target-client or external-installer proof.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><ul class='blocked-checks'><li><span data-lang="zh-CN">原生执行</span><span data-lang="en">Native enforcement</span></li></ul></article><article class='evidence-item'><div><span><span data-lang="zh-CN">外部证据</span><span data-lang="en">External evidence</span></span><h4><span data-lang="zh-CN">原生遥测</span><span data-lang="en">Native Telemetry</span></h4></div><p><span data-lang="zh-CN">真实外部客户端 metadata-only 事件仍未导入。</span><span data-lang="en">Real external-client metadata-only events have not been imported yet.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><ul class='blocked-checks'><li><span data-lang="zh-CN">外部事件</span><span data-lang="en">External events</span></li></ul></article></div></article>
<article class='panel world-readiness'><div class='world-readiness-head'><div><h3><span data-lang="zh-CN">世界证据</span><span data-lang="en">World Evidence</span></h3><p><span data-lang="zh-CN">世界级证据尚未完成:4 项待补,0 项已接受。</span><span data-lang="en">World-class evidence is not complete: 4 pending, 0 accepted.</span></p></div><span class='world-status'><span data-lang="zh-CN">证据待补</span><span data-lang="en">Evidence pending</span></span></div><div class='evidence-kpis'><article class='evidence-kpi'><span><span data-lang="zh-CN">待补证据</span><span data-lang="en">Pending</span></span><strong>4</strong><small><span data-lang="zh-CN">仍需外部或人工证据接受。</span><span data-lang="en">External or human evidence still needs acceptance.</span></small></article><article class='evidence-kpi'><span><span data-lang="zh-CN">已接受</span><span data-lang="en">Accepted</span></span><strong>0</strong><small><span data-lang="zh-CN">已通过 source check 与提交契约。</span><span data-lang="en">Passed source checks and submission contract.</span></small></article><article class='evidence-kpi'><span><span data-lang="zh-CN">源检查</span><span data-lang="en">Source Checks</span></span><strong>11 / 19</strong><small><span data-lang="zh-CN">通过数 / 总检查数。</span><span data-lang="en">Passed checks / total checks.</span></small></article></div><div class='evidence-list'><article class='evidence-item'><div><span><span data-lang="zh-CN">外部证据</span><span data-lang="en">External evidence</span></span><h4><span data-lang="zh-CN">提供商留出</span><span data-lang="en">Provider Holdout</span></h4></div><p><span data-lang="zh-CN">缺少真实 provider 模型运行和 token metadata。</span><span data-lang="en">Missing a real provider model run and token metadata.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><p class='blocked-checks-empty'><span data-lang="zh-CN">当前没有阻塞检查。</span><span data-lang="en">No blocked checks right now.</span></p></article><article class='evidence-item'><div><span><span data-lang="zh-CN">人工证据</span><span data-lang="en">Human evidence</span></span><h4><span data-lang="zh-CN">人工盲评</span><span data-lang="en">Human Adjudication</span></h4></div><p><span data-lang="zh-CN">盲评 pair 仍待真实 reviewer 决策。</span><span data-lang="en">Blind-review pairs still need real reviewer decisions.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><ul class='blocked-checks'><li><span data-lang="zh-CN">无待判定</span><span data-lang="en">No pending decisions</span></li><li><span data-lang="zh-CN">盲评完成</span><span data-lang="en">Judgments complete</span></li><li><span data-lang="zh-CN">Reviewer metadata</span><span data-lang="en">Reviewer metadata</span></li></ul></article><article class='evidence-item'><div><span><span data-lang="zh-CN">外部证据</span><span data-lang="en">External evidence</span></span><h4><span data-lang="zh-CN">原生权限</span><span data-lang="en">Native Permission</span></h4></div><p><span data-lang="zh-CN">原生 runtime enforcement 仍待目标客户端或外部安装器证明。</span><span data-lang="en">Native runtime enforcement still needs target-client or external-installer proof.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><ul class='blocked-checks'><li><span data-lang="zh-CN">原生执行</span><span data-lang="en">Native enforcement</span></li></ul></article><article class='evidence-item'><div><span><span data-lang="zh-CN">外部证据</span><span data-lang="en">External evidence</span></span><h4><span data-lang="zh-CN">原生遥测</span><span data-lang="en">Native Telemetry</span></h4></div><p><span data-lang="zh-CN">真实外部客户端 metadata-only 事件仍未导入。</span><span data-lang="en">Real external-client metadata-only events have not been imported yet.</span></p><h5><span data-lang="zh-CN">阻塞检查</span><span data-lang="en">Blocked Checks</span></h5><ul class='blocked-checks'><li><span data-lang="zh-CN">外部事件</span><span data-lang="en">External events</span></li><li><span data-lang="zh-CN">采用样本</span><span data-lang="en">Adoption sample</span></li></ul></article></div></article>
</div>
</section>
@@ -940,7 +940,7 @@
<p><span data-lang="zh-CN">让 reviewer 快速确认关键文件、目录和资产分布。</span><span data-lang="en">Lets reviewers confirm key files, directories, and asset distribution quickly.</span></p>
</div>
<div class="two-col">
<figure class="chart-figure" data-chart="asset_donut"><svg viewBox="0 0 430 270" role="img" aria-label="资产分布"><text data-lang="zh-CN" x="20" y="30" class="chart-title">资产分布</text><text data-lang="en" x="20" y="30" class="chart-title">Asset Distribution</text><circle cx="130" cy="130" r="70" fill="none" stroke="#1B365D" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="0.0" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#2D5A8A" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="-0.5" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#D0DCE9" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="-1.0" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#E4ECF5" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="-1.5" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#e8e6dc" stroke-width="24" stroke-dasharray="18.0 82.0" stroke-dashoffset="-2.1" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#504e49" stroke-width="24" stroke-dasharray="79.9 20.1" stroke-dashoffset="-20.1" pathLength="100" transform="rotate(-90 130 130)"/><text data-lang="zh-CN" x="130" y="136" text-anchor="middle">393</text><text data-lang="en" x="130" y="136" text-anchor="middle">393 items</text><text data-lang="zh-CN" x="235" y="78">SKILL.md</text><text data-lang="en" x="235" y="78">SKILL.md</text><text data-lang="zh-CN" x="235" y="100">README.md</text><text data-lang="en" x="235" y="100">README.md</text><text data-lang="zh-CN" x="235" y="122">agents/interface.yaml</text><text data-lang="en" x="235" y="122">agents/interface.yaml</text><text data-lang="zh-CN" x="235" y="144">manifest.json</text><text data-lang="en" x="235" y="144">manifest.json</text><text data-lang="zh-CN" x="235" y="166">references</text><text data-lang="en" x="235" y="166">references</text><text data-lang="zh-CN" x="235" y="188">scripts</text><text data-lang="en" x="235" y="188">scripts</text></svg><figcaption><span data-lang="zh-CN">资产分布图展示当前包体的文件和目录重心。</span><span data-lang="en">The asset distribution chart shows where files and directories are concentrated.</span></figcaption></figure>
<figure class="chart-figure" data-chart="asset_donut"><svg viewBox="0 0 430 270" role="img" aria-label="资产分布"><text data-lang="zh-CN" x="20" y="30" class="chart-title">资产分布</text><text data-lang="en" x="20" y="30" class="chart-title">Asset Distribution</text><circle cx="130" cy="130" r="70" fill="none" stroke="#1B365D" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="0.0" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#2D5A8A" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="-0.5" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#D0DCE9" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="-1.0" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#E4ECF5" stroke-width="24" stroke-dasharray="0.5 99.5" stroke-dashoffset="-1.6" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#e8e6dc" stroke-width="24" stroke-dasharray="18.2 81.8" stroke-dashoffset="-2.1" pathLength="100" transform="rotate(-90 130 130)"/><circle cx="130" cy="130" r="70" fill="none" stroke="#504e49" stroke-width="24" stroke-dasharray="79.7 20.3" stroke-dashoffset="-20.3" pathLength="100" transform="rotate(-90 130 130)"/><text data-lang="zh-CN" x="130" y="136" text-anchor="middle">456</text><text data-lang="en" x="130" y="136" text-anchor="middle">456 items</text><text data-lang="zh-CN" x="235" y="78">SKILL.md</text><text data-lang="en" x="235" y="78">SKILL.md</text><text data-lang="zh-CN" x="235" y="100">README.md</text><text data-lang="en" x="235" y="100">README.md</text><text data-lang="zh-CN" x="235" y="122">agents/interface.yaml</text><text data-lang="en" x="235" y="122">agents/interface.yaml</text><text data-lang="zh-CN" x="235" y="144">manifest.json</text><text data-lang="en" x="235" y="144">manifest.json</text><text data-lang="zh-CN" x="235" y="166">references</text><text data-lang="en" x="235" y="166">references</text><text data-lang="zh-CN" x="235" y="188">scripts</text><text data-lang="en" x="235" y="188">scripts</text></svg><figcaption><span data-lang="zh-CN">资产分布图展示当前包体的文件和目录重心。</span><span data-lang="en">The asset distribution chart shows where files and directories are concentrated.</span></figcaption></figure>
<table>
<thead><tr><th><span data-lang="zh-CN">路径</span><span data-lang="en">Path</span></th><th><span data-lang="zh-CN">作用</span><span data-lang="en">Role</span></th><th><span data-lang="zh-CN">类型</span><span data-lang="en">Type</span></th></tr></thead>
<tbody><tr><td>SKILL.md</td><td><span data-lang="zh-CN">Skill 入口文件</span><span data-lang="en">Skill entrypoint</span></td><td><span data-lang="zh-CN">文件</span><span data-lang="en">file</span></td></tr><tr><td>README.md</td><td><span data-lang="zh-CN">人类可读使用说明</span><span data-lang="en">Human-readable usage guide</span></td><td><span data-lang="zh-CN">文件</span><span data-lang="en">file</span></td></tr><tr><td>agents/interface.yaml</td><td><span data-lang="zh-CN">跨平台接口元数据</span><span data-lang="en">Neutral interface metadata</span></td><td><span data-lang="zh-CN">文件</span><span data-lang="en">file</span></td></tr><tr><td>manifest.json</td><td><span data-lang="zh-CN">生命周期与打包元数据</span><span data-lang="en">Lifecycle and portability metadata</span></td><td><span data-lang="zh-CN">文件</span><span data-lang="en">file</span></td></tr><tr><td>references</td><td><span data-lang="zh-CN">扩展指导与复用资料</span><span data-lang="en">Extended guidance and reusable notes</span></td><td><span data-lang="zh-CN">目录</span><span data-lang="en">folder</span></td></tr><tr><td>scripts</td><td><span data-lang="zh-CN">确定性脚本或本地工具</span><span data-lang="en">Deterministic helpers or local tooling</span></td><td><span data-lang="zh-CN">目录</span><span data-lang="en">folder</span></td></tr><tr><td>evals</td><td><span data-lang="zh-CN">触发与质量检查</span><span data-lang="en">Trigger and quality checks</span></td><td><span data-lang="zh-CN">目录</span><span data-lang="en">folder</span></td></tr><tr><td>reports</td><td><span data-lang="zh-CN">生成的证据与总结报告</span><span data-lang="en">Generated evidence and overview artifacts</span></td><td><span data-lang="zh-CN">目录</span><span data-lang="en">folder</span></td></tr></tbody>
+74 -75
View File
@@ -3,7 +3,7 @@
"name": "yao-meta-skill",
"title": "Yao Meta Skill",
"display_name": "Yao Meta Skill",
"description": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.",
"description": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.",
"maturity": "governed",
"updated_at": "2026-03-31",
"core_value": "把一次性经验沉淀为可复用、可评估、可迁移的 Skill 包体。",
@@ -80,7 +80,7 @@
"label": "可维护性",
"score": 100,
"reasons": [
"SKILL.md 约 314 个词/字。",
"SKILL.md 约 339 个词/字。",
"入口文件保持克制,可维护性较好。",
"references/ 已承载扩展指导。",
"scripts/ 已承载确定性逻辑。",
@@ -101,7 +101,7 @@
"label": "上下文成本",
"score": 42,
"reasons": [
"入口约 314 个词/字,references 约 16934 个词/字。",
"入口约 339 个词/字,references 约 16934 个词/字。",
"分数越高代表上下文成本越低。",
"上下文成本偏高,建议压缩入口或拆分 references。"
]
@@ -155,7 +155,7 @@
},
"contract_boundary": {
"trigger": {
"description": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.",
"description": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.",
"activation": "manual",
"execution": "inline",
"shell": "bash"
@@ -183,7 +183,7 @@
"boundary_cards": [
{
"label": "Owned",
"body": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs."
"body": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution."
},
{
"label": "Adjacent",
@@ -205,7 +205,7 @@
"已生成 Output Review Adjudication,可记录盲评决策、一致率和待评审项。"
],
"gaps": [
"上下文成本需要补强:入口约 314 个词/字,references 约 16934 个词/字。"
"上下文成本需要补强:入口约 339 个词/字,references 约 16934 个词/字。"
],
"recommendations": [
"先改触发边界,再扩展工作流。",
@@ -270,7 +270,7 @@
"name": "包体膨胀风险",
"impact": 2,
"probability": 1,
"signal": "SKILL.md 约 314 个词/字。",
"signal": "SKILL.md 约 339 个词/字。",
"response": "先补证据和边界,再增加包体复杂度。"
},
{
@@ -411,7 +411,7 @@
"external_pending_count": 3,
"human_pending_count": 1,
"source_check_count": 19,
"source_pass_count": 12,
"source_pass_count": 11,
"conclusion_zh": "世界级证据尚未完成:4 项待补,0 项已接受。",
"conclusion_en": "World-class evidence is not complete: 4 pending, 0 accepted.",
"entries": [
@@ -468,7 +468,8 @@
"summary_zh": "真实外部客户端 metadata-only 事件仍未导入。",
"summary_en": "Real external-client metadata-only events have not been imported yet.",
"blocked_checks": [
"External events"
"External events",
"Adoption sample"
]
}
]
@@ -509,7 +510,7 @@
"path": "scripts",
"label": "Deterministic helpers or local tooling",
"kind": "folder",
"file_count": 155
"file_count": 153
},
{
"path": "evals",
@@ -521,10 +522,10 @@
"path": "reports",
"label": "Generated evidence and overview artifacts",
"kind": "folder",
"file_count": 170
"file_count": 235
}
],
"file_count": 393,
"file_count": 456,
"folder_count": 4,
"distribution": [
{
@@ -549,7 +550,7 @@
},
{
"label": "scripts",
"value": 155
"value": 153
},
{
"label": "evals",
@@ -557,7 +558,7 @@
},
{
"label": "reports",
"value": 170
"value": 235
}
]
},
@@ -632,17 +633,17 @@
"name": "yao-meta-skill",
"title": "Yao Meta Skill",
"display_name": "Yao Meta Skill",
"description": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.",
"description": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.",
"logic_steps": [
"One-off/no reusable process: `Do not create a skill`; `near-neighbor`; require `repeated use` + `reusable output contract`.",
"Capture job, output, exclusions, constraints, standards, lightest fit.",
"Scan up to `3-5` references: external, user, local; skip tiny edits; surface only uncertainty/conflict.",
"Write `description` early; route/boundary edits need `trigger_eval.py`; releases need risk-matched gates before folders.",
"Add output-risk, artifact-design, prompt-quality, system-model, next directions only when earned."
"For one-off/no reusable process: `Do not create a skill`; `near-neighbor`; require `repeated use` + `reusable output contract`.",
"Capture job, output, exclusions, constraints, standards, and the lightest fit.",
"Scan references in order: external benchmark, user source, local fit; surface only uncertainty or conflict.",
"Write `description` early, test route quality, then add only earned folders and gates.",
"Add output-risk, artifact-design, prompt-quality, system-model, and next directions only when useful."
],
"usage_steps": [
"Use $yao-meta-skill to turn my workflow or notes into a reusable skill with lean structure, clear triggering, and the right evals.",
"Use this skill when the request matches: Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs."
"Use this skill when the request matches: Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution."
],
"package_map": [
{
@@ -679,7 +680,7 @@
"path": "scripts",
"label": "Deterministic helpers or local tooling",
"kind": "folder",
"file_count": 155
"file_count": 153
},
{
"path": "evals",
@@ -691,7 +692,7 @@
"path": "reports",
"label": "Generated evidence and overview artifacts",
"kind": "folder",
"file_count": 170
"file_count": 235
}
],
"strengths": [
@@ -709,7 +710,7 @@
"用户说出类似需求时:Use $yao-meta-skill to turn my workflow or notes into a reusable skill with lean structure, clear triggering, and the right evals."
],
"trigger_contract": {
"description": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.",
"description": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.",
"activation": "manual",
"execution": "inline",
"shell": "bash"
@@ -1011,13 +1012,13 @@
"ok": true,
"summary": {
"reproducibility_ready": true,
"release_lock_ready": false,
"release_lock_ready": true,
"methodology_complete": true,
"required_artifact_count": 25,
"missing_artifact_count": 0,
"evidence_bundle_sha256": "6c95043c2d8513102b37bc70a01647246933c84e8a27c2748cc2cae20e040158",
"source_contract_sha256": "db71157184dc649ee72dfcaf399204d44a366d942393d055571e0137d42c9f7c",
"archive_sha256": "c56a8519244c0bc8ec17c92d4641c832629cc059f4b51fe177a2c039515253a7",
"evidence_bundle_sha256": "55a6c33c12e14d6507d4a5d4d4cf1268db35fb323d523e8b23ce9c73aedf8db0",
"source_contract_sha256": "5a99ef3133b0148cd5bbc1cd85fad4830bf34ca2bbac709f1e1fea2f810b1257",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"output_case_count": 5,
"failure_disclosure_count": 3,
"command_count": 23,
@@ -1032,21 +1033,21 @@
"world_class_task_count": 4,
"world_class_ledger_pending_count": 4,
"world_class_source_check_count": 19,
"world_class_source_pass_count": 12,
"world_class_source_blocked_count": 7,
"beta_test_ready": false,
"beta_test_blocker_count": 1,
"world_class_source_pass_count": 11,
"world_class_source_blocked_count": 8,
"beta_test_ready": true,
"beta_test_blocker_count": 0,
"beta_test_deferred_evidence_count": 4,
"public_claim_ready": false,
"public_claim_blocker_count": 4,
"public_claim_blocker_count": 3,
"working_tree_dirty": true,
"changed_file_count": 37,
"source_tree_dirty": true,
"source_changed_file_count": 1,
"changed_file_count": 29,
"source_tree_dirty": false,
"source_changed_file_count": 0,
"generated_tree_dirty": true,
"generated_changed_file_count": 36
"generated_changed_file_count": 29
},
"commit": "24bea607a2b16e766bc8f2bc8483f22fae1edc61",
"commit": "e79050ed12d057811d7d13ab7d8bcc5a06af76d4",
"missing_artifacts": [],
"limitations": [
"The git commit and dirty flags are generation-time context; release lock is blocked by source changes, while generated evidence artifacts are tracked separately.",
@@ -1131,9 +1132,9 @@
"failures": []
},
"trust_security": {
"scanned_files": 247,
"script_count": 155,
"internal_module_count": 69,
"scanned_files": 245,
"script_count": 153,
"internal_module_count": 67,
"secret_findings": 0,
"dependency_files": [
"requirements-ci.txt"
@@ -1141,7 +1142,7 @@
"network_script_count": 3,
"network_policy_covered_count": 3,
"network_policy_missing_count": 0,
"file_write_script_count": 74,
"file_write_script_count": 73,
"permission_required_count": 3,
"permission_approved_count": 3,
"permission_missing_count": 0,
@@ -1151,24 +1152,24 @@
"help_smoke_failed_count": 0,
"interactive_script_count": 0,
"package_hash_scope": "source-contract-without-generated-reports",
"package_hash_file_count": 247,
"package_sha256": "db71157184dc649ee72dfcaf399204d44a366d942393d055571e0137d42c9f7c"
"package_hash_file_count": 245,
"package_sha256": "5a99ef3133b0148cd5bbc1cd85fad4830bf34ca2bbac709f1e1fea2f810b1257"
},
"skill_atlas": {
"skill_count": 11,
"skill_count": 12,
"actionable_skill_count": 1,
"route_collision_count": 5,
"actionable_route_collision_count": 0,
"owner_gap_count": 8,
"owner_gap_count": 9,
"actionable_owner_gap_count": 0,
"stale_count": 9,
"stale_count": 10,
"actionable_stale_count": 0,
"shared_resource_count": 0,
"no_route_opportunity_count": 0,
"telemetry_report_count": 1,
"drift_signal_count": 0,
"actionable_drift_signal_count": 0,
"non_actionable_issue_count": 22
"non_actionable_issue_count": 24
},
"registry_distribution": {
"ok": true,
@@ -1176,7 +1177,7 @@
"schema_version": "2.0",
"name": "yao-meta-skill",
"version": "1.1.0",
"description": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.",
"description": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.",
"targets": [
"openai",
"claude",
@@ -1190,8 +1191,8 @@
"trust_level": "local",
"license": "MIT",
"checksums": {
"package_sha256": "db71157184dc649ee72dfcaf399204d44a366d942393d055571e0137d42c9f7c",
"archive_sha256": "c56a8519244c0bc8ec17c92d4641c832629cc059f4b51fe177a2c039515253a7"
"package_sha256": "5a99ef3133b0148cd5bbc1cd85fad4830bf34ca2bbac709f1e1fea2f810b1257",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2"
},
"compatibility": {
"openai": "pass",
@@ -1222,7 +1223,7 @@
},
"distribution": {
"archive_verified": true,
"archive_sha256": "c56a8519244c0bc8ec17c92d4641c832629cc059f4b51fe177a2c039515253a7",
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"package_verification": "reports/package_verification.json",
"install_simulated": true,
"install_simulation": "reports/install_simulation.json"
@@ -1238,9 +1239,8 @@
"target_count": 4,
"adapter_count": 4,
"archive_present": true,
"archive_sha256": "c56a8519244c0bc8ec17c92d4641c832629cc059f4b51fe177a2c039515253a7",
"archive_entry_count": 580,
"nested_skill_entry_count": 0,
"archive_sha256": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2",
"archive_entry_count": 689,
"failure_count": 0,
"warning_count": 0
},
@@ -1251,8 +1251,7 @@
"ok": true,
"summary": {
"archive_present": true,
"archive_entry_count": 598,
"nested_skill_entry_count": 0,
"archive_entry_count": 696,
"archive_extracted": true,
"entrypoint_loaded": true,
"manifest_loaded": true,
@@ -1312,19 +1311,19 @@
{
"field": "description",
"from": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes.",
"to": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs."
"to": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution."
}
],
"checksum_changes": [
{
"field": "archive_sha256",
"from": "",
"to": "c56a8519244c0bc8ec17c92d4641c832629cc059f4b51fe177a2c039515253a7"
"to": "7db44f059844b71930ea8194a72ba1a316116ca970620de5550d60616e8f23c2"
},
{
"field": "package_sha256",
"from": "0000000000000000000000000000000000000000000000000000000000000000",
"to": "db71157184dc649ee72dfcaf399204d44a366d942393d055571e0137d42c9f7c"
"to": "5a99ef3133b0148cd5bbc1cd85fad4830bf34ca2bbac709f1e1fea2f810b1257"
}
]
},
@@ -1341,14 +1340,14 @@
"ok": true,
"summary": {
"event_count": 1,
"adoption_sample_count": 1,
"activation_count": 1,
"accepted_count": 1,
"adoption_sample_count": 0,
"activation_count": 0,
"accepted_count": 0,
"edited_count": 0,
"rejected_count": 0,
"missed_count": 0,
"failed_count": 0,
"adoption_rate": 100.0,
"adoption_rate": 0,
"missed_trigger_count": 0,
"wrong_trigger_count": 0,
"bad_output_count": 0,
@@ -1357,7 +1356,7 @@
"review_overdue_count": 0,
"risk_band": "low",
"event_types": {
"skill_activation": 1
"review_event": 1
},
"failure_types": {},
"source_types": {
@@ -1632,7 +1631,7 @@
"status": "external_required",
"category": "external",
"owner": "Browser/Chrome/IDE/provider client integrator",
"current": "external source events 0; adoption samples 1",
"current": "external source events 0; adoption samples 0",
"objective": "Import production metadata-only events from a real external client into the local drift loop.",
"runbook": [
"python3 scripts/telemetry_native_host.py . --write-launcher /tmp/yao-telemetry-host.sh --write-manifest /tmp/yao-telemetry-host.json --allowed-origin chrome-extension://<extension-id>/",
@@ -1685,8 +1684,8 @@
"missing_submission_count": 4,
"invalid_submission_count": 0,
"source_check_count": 19,
"source_pass_count": 12,
"source_blocked_count": 7,
"source_pass_count": 11,
"source_blocked_count": 8,
"submitted_but_pending_count": 0,
"source_accepted_without_valid_submission_count": 1,
"overclaim_guard_active": true,
@@ -2112,7 +2111,7 @@
"status": "pending",
"source_status": "external_required",
"source_accepted": false,
"current": "external source events 0; adoption samples 1",
"current": "external source events 0; adoption samples 0",
"objective": "Import production metadata-only events from a real external client into the local drift loop.",
"runbook": [
"python3 scripts/telemetry_native_host.py . --write-launcher /tmp/yao-telemetry-host.sh --write-manifest /tmp/yao-telemetry-host.json --allowed-origin chrome-extension://<extension-id>/",
@@ -2149,7 +2148,7 @@
],
"observed_state": {
"external_source_events": 0,
"adoption_sample_count": 1,
"adoption_sample_count": 0,
"raw_content_allowed": false,
"risk_band": "low",
"accepted": false
@@ -2170,8 +2169,8 @@
"label": "Adoption sample",
"field": "adoption_sample_count",
"expected": ">0",
"actual": 1,
"status": "pass",
"actual": 0,
"status": "blocked",
"source_accepted": false,
"next_action": "Telemetry must include adoption outcome evidence."
},
@@ -2187,8 +2186,8 @@
}
],
"source_check_count": 3,
"source_pass_count": 2,
"source_blocked_count": 1,
"source_pass_count": 1,
"source_blocked_count": 2,
"submission_state": {
"status": "missing",
"path": "evidence/world_class/submissions/native-client-telemetry.json",
@@ -2218,7 +2217,7 @@
},
"synthesis_highlights": [
"Borrow progressive disclosure: keep the entrypoint lean and move depth into references or scripts.",
"Borrow a small hypothesis-test-learn loop so the first revision is evidence-backed.",
"Borrow a review checkpoint wherever trust matters more than raw speed.",
"Borrow the discipline of defining what the skill should not own before growing the package."
],
"artifact_design": {
+3 -3
View File
@@ -24,7 +24,7 @@
<h1>Skill Atlas</h1>
<p>Portfolio-level review for route overlap, stale ownership, shared resources, telemetry drift, and no-route opportunities.</p>
<section class="grid">
<div class="card"><span>Skills</span><strong>11</strong></div>
<div class="card"><span>Skills</span><strong>12</strong></div>
<div class="card"><span>Actionable</span><strong>1</strong></div>
<div class="card"><span>Route Collisions</span><strong>0</strong></div>
<div class="card"><span>Owner Gaps</span><strong>0</strong></div>
@@ -43,13 +43,13 @@
</section>
<section>
<h2>Full Portfolio Counts</h2>
<p>All scanned skills remain visible: 5 total route collisions, 8 total owner gaps, 9 total stale signals, and 0 telemetry drift signals.</p>
<p>All scanned skills remain visible: 5 total route collisions, 9 total owner gaps, 10 total stale signals, and 0 telemetry drift signals.</p>
</section>
<section>
<h2>Catalog</h2>
<table>
<thead><tr><th>Name</th><th>Path</th><th>Owner</th><th>Maturity</th><th>Review</th><th>Scope</th></tr></thead>
<tbody><tr><td>yao-meta-skill</td><td>.</td><td>Yao Team</td><td>governed</td><td>quarterly</td><td>release</td></tr><tr><td>release-orchestrator</td><td>examples/complex-release-orchestrator/generated-skill</td><td>Yao Team</td><td>production</td><td>quarterly</td><td>example</td></tr><tr><td>frontend-review</td><td>examples/evolution-frontend-review/final</td><td>missing</td><td>unknown</td><td>missing</td><td>example</td></tr><tr><td>frontend-review</td><td>examples/evolution-frontend-review/v0</td><td>missing</td><td>unknown</td><td>missing</td><td>example</td></tr><tr><td>frontend-review</td><td>examples/evolution-frontend-review/v1</td><td>missing</td><td>unknown</td><td>missing</td><td>example</td></tr><tr><td>incident-command-governor</td><td>examples/governed-incident-command/generated-skill</td><td>Incident Operations Team</td><td>governed</td><td>monthly</td><td>example</td></tr><tr><td>note-cleanup</td><td>examples/simple-note-cleanup/generated-skill</td><td>missing</td><td>unknown</td><td>missing</td><td>example</td></tr><tr><td>frontend-review</td><td>examples/team-frontend-review/generated-skill</td><td>missing</td><td>unknown</td><td>missing</td><td>example</td></tr><tr><td>invalid-governance-skill</td><td>tests/fixtures/governance_invalid_manifest</td><td>missing</td><td>governed</td><td>missing</td><td>test-fixture</td></tr><tr><td>broken-yaml-skill</td><td>tests/fixtures/package_invalid_yaml</td><td>missing</td><td>unknown</td><td>missing</td><td>test-fixture</td></tr><tr><td>broken-skill</td><td>tests/fixtures/package_missing_interface_field</td><td>missing</td><td>unknown</td><td>missing</td><td>test-fixture</td></tr></tbody>
<tbody><tr><td>yao-meta-skill</td><td>.</td><td>Yao Team</td><td>governed</td><td>quarterly</td><td>release</td></tr><tr><td>release-orchestrator</td><td>examples/complex-release-orchestrator/generated-skill</td><td>Yao Team</td><td>production</td><td>quarterly</td><td>example</td></tr><tr><td>frontend-review</td><td>examples/evolution-frontend-review/final</td><td>missing</td><td>unknown</td><td>missing</td><td>example</td></tr><tr><td>frontend-review</td><td>examples/evolution-frontend-review/v0</td><td>missing</td><td>unknown</td><td>missing</td><td>example</td></tr><tr><td>frontend-review</td><td>examples/evolution-frontend-review/v1</td><td>missing</td><td>unknown</td><td>missing</td><td>example</td></tr><tr><td>incident-command-governor</td><td>examples/governed-incident-command/generated-skill</td><td>Incident Operations Team</td><td>governed</td><td>monthly</td><td>example</td></tr><tr><td>note-cleanup</td><td>examples/simple-note-cleanup/generated-skill</td><td>missing</td><td>unknown</td><td>missing</td><td>example</td></tr><tr><td>frontend-review</td><td>examples/team-frontend-review/generated-skill</td><td>missing</td><td>unknown</td><td>missing</td><td>example</td></tr><tr><td>geo-ranking-article-generator</td><td>geo-ranking-article-generator</td><td>missing</td><td>unknown</td><td>missing</td><td>embedded-generated-skill</td></tr><tr><td>invalid-governance-skill</td><td>tests/fixtures/governance_invalid_manifest</td><td>missing</td><td>governed</td><td>missing</td><td>test-fixture</td></tr><tr><td>broken-yaml-skill</td><td>tests/fixtures/package_invalid_yaml</td><td>missing</td><td>unknown</td><td>missing</td><td>test-fixture</td></tr><tr><td>broken-skill</td><td>tests/fixtures/package_missing_interface_field</td><td>missing</td><td>unknown</td><td>missing</td><td>test-fixture</td></tr></tbody>
</table>
</section>
</main>
+111 -28
View File
@@ -2,20 +2,20 @@
"ok": true,
"workspace_root": ".",
"summary": {
"skill_count": 11,
"skill_count": 12,
"actionable_skill_count": 1,
"route_collision_count": 5,
"actionable_route_collision_count": 0,
"owner_gap_count": 8,
"owner_gap_count": 9,
"actionable_owner_gap_count": 0,
"stale_count": 9,
"stale_count": 10,
"actionable_stale_count": 0,
"shared_resource_count": 0,
"no_route_opportunity_count": 0,
"telemetry_report_count": 1,
"drift_signal_count": 0,
"actionable_drift_signal_count": 0,
"non_actionable_issue_count": 22
"non_actionable_issue_count": 24
},
"scope_policy": {
"present": true,
@@ -49,7 +49,7 @@
{
"name": "yao-meta-skill",
"path": ".",
"description": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.",
"description": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.",
"owner": "Yao Team",
"version": "1.1.0",
"status": "active",
@@ -210,12 +210,10 @@
"scripts/yao_cli_config.py",
"scripts/yao_cli_create_commands.py",
"scripts/yao_cli_distribution_commands.py",
"scripts/yao_cli_operator_commands.py",
"scripts/yao_cli_output_commands.py",
"scripts/yao_cli_parser.py",
"scripts/yao_cli_parser_evidence.py",
"scripts/yao_cli_parser_operations.py",
"scripts/yao_cli_parser_operator.py",
"scripts/yao_cli_report_commands.py",
"scripts/yao_cli_runtime.py",
"scripts/yao_cli_telemetry.py",
@@ -262,28 +260,22 @@
"templates/complex_skill.md.j2"
],
"token_set": [
"checks",
"creation",
"distribution",
"docs",
"evals",
"evaluate",
"exclude",
"improve",
"install",
"migration",
"no-skill",
"improvement",
"notes",
"or",
"package",
"packaging",
"prompts",
"release",
"routing",
"scripts",
"sops",
"summary",
"tests",
"translation",
"trigger",
"workflows",
"优化已有",
"评测"
"refactor",
"team-ready",
"transcripts",
"workflow",
"workflows"
],
"atlas_scope": "release",
"actionable": true,
@@ -637,6 +629,75 @@
"candidate_count": 0
}
},
{
"name": "geo-ranking-article-generator",
"path": "geo-ranking-article-generator",
"description": "Create GEO ranking-article packs from brand briefs. Use when asked to research a brand, find GEO or 生成式引擎优化 keywords and five competitors, generate timely titles, write five ~2000-character articles, and save them to a fixed knowledge-base folder with an HTML index. Do not use for generic SEO advice, one-off copy, or writing without competitor research.",
"owner": "",
"version": "",
"status": "",
"maturity": "",
"updated_at": "",
"review_cadence": "",
"targets": [],
"resources": [
"scripts/build_html_index.py",
"references/article-blueprint.md",
"references/feishu-benchmark-patterns.md",
"references/geo-research-playbook.md",
"templates/brand-brief-template.md"
],
"token_set": [
"2000-character",
"advice",
"articles",
"asked",
"brand",
"briefs",
"competitor",
"competitors",
"copy",
"do",
"find",
"five",
"fixed",
"folder",
"generate",
"generic",
"geo",
"html",
"index",
"keywords",
"knowledge-base",
"not",
"one-off",
"or",
"packs",
"ranking-article",
"research",
"save",
"seo",
"them",
"timely",
"titles",
"without",
"write",
"writing",
"生成式引擎优化"
],
"atlas_scope": "embedded-generated-skill",
"actionable": false,
"scope_reason": "This nested generated skill is retained as local evidence and should not gate the root Meta Skill release.",
"telemetry": {
"report_present": false,
"report": "geo-ranking-article-generator/reports/adoption_drift_report.json",
"risk_band": "missing",
"event_count": 0,
"adoption_sample_count": 0,
"adoption_rate": 0,
"candidate_count": 0
}
},
{
"name": "invalid-governance-skill",
"path": "tests/fixtures/governance_invalid_manifest",
@@ -735,20 +796,20 @@
}
],
"summary": {
"skill_count": 11,
"skill_count": 12,
"actionable_skill_count": 1,
"route_collision_count": 5,
"actionable_route_collision_count": 0,
"owner_gap_count": 8,
"owner_gap_count": 9,
"actionable_owner_gap_count": 0,
"stale_count": 9,
"stale_count": 10,
"actionable_stale_count": 0,
"shared_resource_count": 0,
"no_route_opportunity_count": 0,
"telemetry_report_count": 1,
"drift_signal_count": 0,
"actionable_drift_signal_count": 0,
"non_actionable_issue_count": 22
"non_actionable_issue_count": 24
}
},
"route_collisions": [
@@ -843,6 +904,10 @@
"name": "frontend-review",
"path": "examples/team-frontend-review/generated-skill"
},
{
"name": "geo-ranking-article-generator",
"path": "geo-ranking-article-generator"
},
{
"name": "invalid-governance-skill",
"path": "tests/fixtures/governance_invalid_manifest"
@@ -903,6 +968,13 @@
"actionable": false,
"scope": "example"
},
{
"name": "geo-ranking-article-generator",
"path": "geo-ranking-article-generator",
"reason": "missing updated_at",
"actionable": false,
"scope": "embedded-generated-skill"
},
{
"name": "invalid-governance-skill",
"path": "tests/fixtures/governance_invalid_manifest",
@@ -982,6 +1054,17 @@
"actionable": false,
"scope": "example"
},
{
"name": "geo-ranking-article-generator",
"path": "geo-ranking-article-generator",
"missing": [
"owner",
"review_cadence",
"maturity"
],
"actionable": false,
"scope": "embedded-generated-skill"
},
{
"name": "invalid-governance-skill",
"path": "tests/fixtures/governance_invalid_manifest",
+6 -6
View File
@@ -1,7 +1,7 @@
{
"schema_version": "1.0",
"ok": true,
"generated_at": "2026-06-13",
"generated_at": "2026-06-17",
"skill_dir": ".",
"summary": {
"item_count": 15,
@@ -197,7 +197,7 @@
"key": "trust-security",
"label": "Trust Security",
"status": "pass",
"current": "secrets 0; scripts 155; help failures 0",
"current": "secrets 0; scripts 153; help failures 0",
"target": "Secrets, scripts, dependencies, permissions, and package hash are reviewable",
"evidence": [
{
@@ -259,7 +259,7 @@
"key": "skill-atlas",
"label": "Skill Atlas",
"status": "pass",
"current": "11 skills; actionable collisions 0",
"current": "12 skills; actionable collisions 0",
"target": "Workspace catalog, route overlap, stale/owner gaps, drift, and no-route opportunities",
"evidence": [
{
@@ -285,7 +285,7 @@
"key": "registry-distribution",
"label": "Registry Distribution",
"status": "pass",
"current": "zip entries 580; install failures 0; permission failures 0",
"current": "zip entries 689; install failures 0; permission failures 0",
"target": "Package metadata, archive checksum, package verification, and install simulation pass",
"evidence": [
{
@@ -351,7 +351,7 @@
"key": "native-client-telemetry",
"label": "Native Client Telemetry",
"status": "external_required",
"current": "external source events 0; adoption samples 1",
"current": "external source events 0; adoption samples 0",
"target": "A real Browser/Chrome/provider client sends production metadata events",
"evidence": [
{
@@ -415,7 +415,7 @@
"key": "native-client-telemetry",
"label": "Native Client Telemetry",
"status": "external_required",
"current": "external source events 0; adoption samples 1",
"current": "external source events 0; adoption samples 0",
"target": "A real Browser/Chrome/provider client sends production metadata events",
"evidence": [
{
+5 -5
View File
@@ -1,6 +1,6 @@
# Skill OS 2.0 Audit
Generated at: `2026-06-13`
Generated at: `2026-06-17`
## Summary
@@ -23,14 +23,14 @@ Generated at: `2026-06-13`
| Human Adjudication | human-required | 0/5 decisions; pending 5 | Real reviewer decisions, blind-review attestation, and integrity fingerprints recorded before claiming output review completion | Record real A/B choices, reviewer metadata, and blind-review attestation, then regenerate adjudication. |
| Benchmark Reproducibility | pass | artifacts 25; missing 0; failures 3 | Public methodology, reproducible commands, required artifacts, and failure disclosure are machine-checkable | Keep the manifest current with every benchmark, package, and release evidence change. |
| Runtime Conformance | pass | 5/5 targets pass | Target package structure, metadata, relative paths, and degradation notes pass | Keep target conformance fixtures updated as platform contracts change. |
| Trust Security | pass | secrets 0; scripts 155; help failures 0 | Secrets, scripts, dependencies, permissions, and package hash are reviewable | Keep high-permission approvals scoped, expiring, and target-mapped. |
| Trust Security | pass | secrets 0; scripts 153; help failures 0 | Secrets, scripts, dependencies, permissions, and package hash are reviewable | Keep high-permission approvals scoped, expiring, and target-mapped. |
| Permission Metadata | pass | 4/4 target probes pass; metadata fallback 4; installer enforcement 4 | Packaged adapters expose explicit permission metadata, residual risks, and installer enforcement evidence when available | Preserve residual-risk notes until real native enforcement exists. |
| Native Permission Enforcement | external-required | native-enforced targets 0; installer-enforced targets 4 | At least one target/client enforces approved permissions at runtime | Integrate a real target-client or external installer runtime guard before claiming native permission enforcement. |
| Skill Atlas | pass | 11 skills; actionable collisions 0 | Workspace catalog, route overlap, stale/owner gaps, drift, and no-route opportunities | Feed real drift data into Atlas once client telemetry is installed. |
| Registry Distribution | pass | zip entries 580; install failures 0; permission failures 0 | Package metadata, archive checksum, package verification, and install simulation pass | Regenerate registry after package verification so checksums stay aligned. |
| Skill Atlas | pass | 12 skills; actionable collisions 0 | Workspace catalog, route overlap, stale/owner gaps, drift, and no-route opportunities | Feed real drift data into Atlas once client telemetry is installed. |
| Registry Distribution | pass | zip entries 689; install failures 0; permission failures 0 | Package metadata, archive checksum, package verification, and install simulation pass | Regenerate registry after package verification so checksums stay aligned. |
| Review Studio | pass | decision review; warnings 3; score 91 | One page shows gates, evidence paths, blockers, warnings, actions, waivers, and annotations | Resolve human/external warning gates before claiming full release readiness. |
| Telemetry Drift | pass | events 1; risk low; recipes 5 | Local-first metadata-only event contract, aggregate drift report, hook recipes, and import path | Keep raw JSONL out of distributed packages and use aggregate reports for Atlas. |
| Native Client Telemetry | external-required | external source events 0; adoption samples 1 | A real Browser/Chrome/provider client sends production metadata events | Install a real client against the native host and import production metadata-only events. |
| Native Client Telemetry | external-required | external source events 0; adoption samples 0 | A real Browser/Chrome/provider client sends production metadata events | Install a real client against the native host and import production metadata-only events. |
## Open Highest-Leverage Gaps
+9 -9
View File
@@ -1,7 +1,7 @@
{
"schema_version": "1.0",
"ok": true,
"generated_at": "2026-07-02",
"generated_at": "2026-06-17",
"skill_dir": ".",
"summary": {
"item_count": 21,
@@ -130,7 +130,7 @@
"label": "Trust Security",
"status": "pass",
"objective": "Scripts, dependencies, permissions, secrets, and package hash are reviewable for team distribution.",
"current": "155 scripts; secrets 0; help failures 0",
"current": "153 scripts; secrets 0; help failures 0",
"command": "python3 scripts/yao.py trust .",
"test": "python3 tests/verify_trust_check.py",
"evidence": [
@@ -167,7 +167,7 @@
"label": "Skill Atlas",
"status": "pass",
"objective": "Team skill portfolio reveals route collisions, stale ownership, dependency graph, and no-route opportunities.",
"current": "11 scanned skills; actionable collisions 0",
"current": "12 scanned skills; actionable collisions 0",
"command": "python3 scripts/yao.py skill-atlas --workspace-root .",
"test": "python3 tests/verify_skill_atlas.py",
"evidence": [
@@ -204,7 +204,7 @@
"label": "Registry Distribution",
"status": "pass",
"objective": "Skill packages are installable, versioned, checksumed, and upgrade-reviewable.",
"current": "archive entries 580; install failures 0",
"current": "archive entries 689; install failures 0",
"command": "python3 scripts/yao.py package . --platform openai --platform claude --platform generic --platform vscode --output-dir dist --zip && python3 scripts/yao.py registry-audit .",
"test": "python3 tests/verify_registry_audit.py",
"evidence": [
@@ -513,7 +513,7 @@
"label": "Skill Atlas Generator",
"status": "pass",
"objective": "Recommended Skill OS 2.0 implementation PR from the upgrade plan.",
"current": "11 scanned skills",
"current": "12 scanned skills",
"command": "make ci-test",
"test": "tests/verify_skill_atlas.py",
"evidence": [
@@ -749,11 +749,11 @@
"exists": true
},
{
"path": "reports/skillops/daily/2026-07-02.json",
"path": "reports/skillops/daily/2026-06-17.json",
"exists": true
},
{
"path": "reports/skillops/daily/2026-07-02.md",
"path": "reports/skillops/daily/2026-06-17.md",
"exists": true
}
],
@@ -776,11 +776,11 @@
"exists": true
},
{
"path": "reports/skillops/weekly/2026-W27.json",
"path": "reports/skillops/weekly/2026-W25.json",
"exists": true
},
{
"path": "reports/skillops/weekly/2026-W27.md",
"path": "reports/skillops/weekly/2026-W25.md",
"exists": true
}
],
+7 -7
View File
@@ -1,6 +1,6 @@
# Skill OS 2.0 Blueprint Coverage
Generated at: `2026-07-02`
Generated at: `2026-06-17`
## Summary
@@ -26,9 +26,9 @@ This report maps the Skill OS 2.0 upgrade blueprint to concrete local artifacts,
| Skill IR | `pass` | schema 2.0.0; targets 5 | `python3 scripts/yao.py skill-ir .` | `python3 tests/verify_skill_ir.py` |
| Output Eval Lab | `pass` | 5 cases; delta 100.0; execution 10 | `python3 scripts/yao.py output-exec . && python3 scripts/yao.py output-review .` | `python3 tests/verify_output_eval_lab.py` |
| Runtime Conformance | `pass` | 5/5 targets pass | `python3 scripts/yao.py conformance .` | `python3 tests/verify_conformance_suite.py` |
| Trust Security | `pass` | 155 scripts; secrets 0; help failures 0 | `python3 scripts/yao.py trust .` | `python3 tests/verify_trust_check.py` |
| Skill Atlas | `pass` | 11 scanned skills; actionable collisions 0 | `python3 scripts/yao.py skill-atlas --workspace-root .` | `python3 tests/verify_skill_atlas.py` |
| Registry Distribution | `pass` | archive entries 580; install failures 0 | `python3 scripts/yao.py package . --platform openai --platform claude --platform generic --platform vscode --output-dir dist --zip && python3 scripts/yao.py registry-audit .` | `python3 tests/verify_registry_audit.py` |
| Trust Security | `pass` | 153 scripts; secrets 0; help failures 0 | `python3 scripts/yao.py trust .` | `python3 tests/verify_trust_check.py` |
| Skill Atlas | `pass` | 12 scanned skills; actionable collisions 0 | `python3 scripts/yao.py skill-atlas --workspace-root .` | `python3 tests/verify_skill_atlas.py` |
| Registry Distribution | `pass` | archive entries 689; install failures 0 | `python3 scripts/yao.py package . --platform openai --platform claude --platform generic --platform vscode --output-dir dist --zip && python3 scripts/yao.py registry-audit .` | `python3 tests/verify_registry_audit.py` |
| Review Studio | `pass` | 16 gates; decision review; warnings 3 | `python3 scripts/yao.py review-studio .` | `python3 tests/verify_review_studio.py` |
| Telemetry Drift | `pass` | events 1; recipes 5; risk low | `python3 scripts/yao.py telemetry-hooks . && python3 scripts/yao.py adoption-drift .` | `python3 tests/verify_telemetry_hooks.py` |
@@ -44,7 +44,7 @@ This report maps the Skill OS 2.0 upgrade blueprint to concrete local artifacts,
| Compiler Refactor | `pass` | 5/5 compiled targets | `make ci-test` | `tests/verify_compile_skill.py` |
| Agent Skills Conformance | `pass` | agent-skills target present | `make ci-test` | `tests/verify_conformance_suite.py` |
| Trust Check | `pass` | secret findings 0 | `make ci-test` | `tests/verify_trust_check.py` |
| Skill Atlas Generator | `pass` | 11 scanned skills | `make ci-test` | `tests/verify_skill_atlas.py` |
| Skill Atlas Generator | `pass` | 12 scanned skills | `make ci-test` | `tests/verify_skill_atlas.py` |
| Registry Package Format | `pass` | registry ok True | `make ci-test` | `tests/verify_registry_audit.py` |
| Review Studio 2.0 | `pass` | 16 review gates | `make ci-test` | `tests/verify_review_studio.py` |
| Migration V2 Docs | `pass` | migration guide present | `make ci-test` | `docs review` |
@@ -235,12 +235,12 @@ These extension tracks come from the user-supplied 2.0 reference plan. They are
- objective: Daily operations layer summarizes explicit-source conversation patterns, proposal-only adaptation work, approval state, release locks, and world-class evidence gaps.
- status: `covered`
- existing evidence: `scripts/render_daily_skillops_report.py`, `tests/verify_daily_skillops.py`, `reports/skillops/daily/2026-07-02.json`, `reports/skillops/daily/2026-07-02.md`
- existing evidence: `scripts/render_daily_skillops_report.py`, `tests/verify_daily_skillops.py`, `reports/skillops/daily/2026-06-17.json`, `reports/skillops/daily/2026-06-17.md`
- next action: Keep Daily SkillOps report aligned with proposal, approval, coverage, and world-class ledger contracts as the operations layer evolves.
### Weekly Curator Report
- objective: Weekly curator layer aggregates Daily SkillOps opportunities, Skill Atlas portfolio signals, release locks, and world-class evidence gaps into a maintenance queue.
- status: `covered`
- existing evidence: `scripts/render_weekly_curator_report.py`, `tests/verify_weekly_curator.py`, `reports/skillops/weekly/2026-W27.json`, `reports/skillops/weekly/2026-W27.md`
- existing evidence: `scripts/render_weekly_curator_report.py`, `tests/verify_weekly_curator.py`, `reports/skillops/weekly/2026-W25.json`, `reports/skillops/weekly/2026-W25.md`
- next action: Use weekly curator output as the Skill Librarian maintenance queue before approving any durable skill-library changes.
-513
View File
@@ -1,513 +0,0 @@
{
"schema_version": "1.0",
"ok": true,
"generated_at": "2026-06-20T12:35:26Z",
"skill_dir": ".",
"decision": "proposal-review",
"source_supplied": false,
"pattern_count": 5,
"proposal_count": 5,
"approval_count": 0,
"pending_review_count": 0,
"applied_count": 0,
"rollback_count": 0,
"local_blueprint_ready": true,
"public_world_class_ready": false,
"world_class_pending_count": 4,
"release_lock_ready": true,
"evidence_consistency_ok": true,
"writes_source_files": false,
"auto_patch_enabled": false,
"failure_count": 0,
"summary": {
"decision": "proposal-review",
"source_supplied": false,
"pattern_count": 5,
"proposal_count": 5,
"approval_count": 0,
"pending_review_count": 0,
"applied_count": 0,
"rollback_count": 0,
"local_blueprint_ready": true,
"public_world_class_ready": false,
"world_class_pending_count": 4,
"release_lock_ready": true,
"evidence_consistency_ok": true,
"writes_source_files": false,
"auto_patch_enabled": false,
"failure_count": 0
},
"operations_contract": {
"schema_version": "1.0",
"contract": "daily-skillops-report",
"explicit_source_required_for_scan": true,
"implicit_private_log_scan": false,
"raw_content_stored": false,
"redacted_excerpts_only": true,
"proposal_only": true,
"approval_required_for_writes": true,
"writes_source_files": false,
"auto_patch_enabled": false,
"daily_report_counts_as_world_class_evidence": false
},
"report_contract": {
"schema_version": "1.0",
"contract": "daily-skillops-report",
"top_level_mirrors_summary": true,
"summary_fields": [
"decision",
"source_supplied",
"pattern_count",
"proposal_count",
"approval_count",
"pending_review_count",
"applied_count",
"rollback_count",
"local_blueprint_ready",
"public_world_class_ready",
"world_class_pending_count",
"release_lock_ready",
"evidence_consistency_ok",
"writes_source_files",
"auto_patch_enabled",
"failure_count"
],
"source_of_truth": [
"summary",
"operations_contract"
]
},
"source": {
"path": "evals/adaptation/user_signals.example.jsonl",
"fingerprint_sha256": "48f94a4f3b82f90db29921c13d09c765ec10aabfde1adce65710c137cc6c5abf",
"record_count": 8,
"explicit_source": true,
"raw_content_stored": false,
"redacted_excerpts_only": true
},
"patterns": [
{
"pattern_id": "language_default",
"label": "Default language preference",
"signal_type": "report-language",
"support_count": 2,
"confidence": 0.79,
"reason": "2 redacted records matched repeated report-language signals.",
"recommended_action": "Keep generated reports Chinese-first with an English switch where user-facing.",
"evidence": [
{
"record_id": "line-1",
"excerpt": "新生成的 Skill 报告默认使用中文简体,并在右上角提供英文切换。"
},
{
"record_id": "line-2",
"excerpt": "HTML 报告需要双语能力,但默认内容应该保持中文简体。"
}
]
},
{
"pattern_id": "report_ui",
"label": "Report UI and visualization preference",
"signal_type": "artifact-design",
"support_count": 5,
"confidence": 0.95,
"reason": "5 redacted records matched repeated artifact-design signals.",
"recommended_action": "Prioritize white-background Kami-style reports with readable charts and stable navigation.",
"evidence": [
{
"record_id": "line-1",
"excerpt": "新生成的 Skill 报告默认使用中文简体,并在右上角提供英文切换。"
},
{
"record_id": "line-2",
"excerpt": "HTML 报告需要双语能力,但默认内容应该保持中文简体。"
},
{
"record_id": "line-3",
"excerpt": "报告排版采用白底 Kami 风格,图表、模块和导航都要清晰。"
}
]
},
{
"pattern_id": "approval_safety",
"label": "Approval and privacy boundary",
"signal_type": "governance",
"support_count": 2,
"confidence": 0.79,
"reason": "2 redacted records matched repeated governance signals.",
"recommended_action": "Keep adaptive work proposal-only until a reviewer approves an allowlisted patch path.",
"evidence": [
{
"record_id": "line-5",
"excerpt": "自适应升级必须先生成提案,不能直接自动修改源文件。"
},
{
"record_id": "line-6",
"excerpt": "用户偏好扫描必须由用户提供明确路径,不要默认扫描私人日志。"
}
]
},
{
"pattern_id": "delivery_format",
"label": "Delivery format preference",
"signal_type": "artifact-format",
"support_count": 2,
"confidence": 0.79,
"reason": "2 redacted records matched repeated artifact-format signals.",
"recommended_action": "Surface stable artifact paths and formats in CLI output and generated summaries.",
"evidence": [
{
"record_id": "line-2",
"excerpt": "HTML 报告需要双语能力,但默认内容应该保持中文简体。"
},
{
"record_id": "line-6",
"excerpt": "用户偏好扫描必须由用户提供明确路径,不要默认扫描私人日志。"
}
]
},
{
"pattern_id": "evidence_testing",
"label": "Evidence and testing preference",
"signal_type": "quality-gate",
"support_count": 2,
"confidence": 0.79,
"reason": "2 redacted records matched repeated quality-gate signals.",
"recommended_action": "Attach focused tests and refreshed evidence reports to every non-trivial skill upgrade.",
"evidence": [
{
"record_id": "line-7",
"excerpt": "每次升级都需要测试、覆盖报告和可审计证据,推送前要跑 CI。"
},
{
"record_id": "line-8",
"excerpt": "涉及 GitHub 推送时,要保留证据链,避免把计划当作完成证明。"
}
]
}
],
"proposals": [
{
"proposal_id": "adapt-18c7517f3d",
"pattern_id": "language_default",
"title": "Keep reports Chinese-first with optional English",
"risk_level": "low",
"status": "proposal-only",
"requires_approval": true,
"target_files": [
"scripts/render_skill_overview.py",
"references/artifact-design-doctrine.md"
],
"verification_commands": [
"python3 tests/verify_skill_overview.py"
]
},
{
"proposal_id": "adapt-fbfe921ba5",
"pattern_id": "report_ui",
"title": "Improve report layout, visual hierarchy, and chart readability",
"risk_level": "medium",
"status": "proposal-only",
"requires_approval": true,
"target_files": [
"scripts/render_skill_overview.py",
"references/artifact-design-doctrine.md",
"tests/verify_skill_overview.py"
],
"verification_commands": [
"python3 tests/verify_skill_overview.py",
"python3 tests/verify_skill_report_charts.py"
]
},
{
"proposal_id": "adapt-59d219a1fb",
"pattern_id": "approval_safety",
"title": "Keep adaptive iteration approval-gated",
"risk_level": "low",
"status": "proposal-only",
"requires_approval": true,
"target_files": [
"references/user-memory-policy.md",
"references/autonomous-adaptation.md",
"schemas/adaptation-proposal.schema.json"
],
"verification_commands": [
"python3 tests/verify_adaptation_safety.py"
]
},
{
"proposal_id": "adapt-457baca160",
"pattern_id": "delivery_format",
"title": "Make generated artifact paths explicit in CLI output",
"risk_level": "low",
"status": "proposal-only",
"requires_approval": true,
"target_files": [
"scripts/yao.py",
"README.md"
],
"verification_commands": [
"python3 tests/verify_yao_cli.py"
]
},
{
"proposal_id": "adapt-abfee25d3a",
"pattern_id": "evidence_testing",
"title": "Attach tests and evidence refresh to each upgrade",
"risk_level": "medium",
"status": "proposal-only",
"requires_approval": true,
"target_files": [
"tests/verify_adaptation_safety.py",
"scripts/render_skill_os2_coverage.py",
"reports/skill_os2_coverage.json"
],
"verification_commands": [
"python3 tests/verify_adaptation_safety.py",
"python3 tests/verify_skill_os2_coverage.py"
]
}
],
"opportunity_summary": {
"opportunity_count": 5,
"top_score": 88,
"ready_for_approval_review_count": 1,
"proposal_review_count": 4,
"observe_more_evidence_count": 0,
"report_only_count": 0,
"action_type_counts": {
"patch_existing_skill": 3,
"agents_update": 1,
"add_eval": 1
},
"decision_counts": {
"ready_for_approval_review": 1,
"proposal_review": 4
}
},
"opportunities": [
{
"opportunity_id": "skillops-4ad91c18dd",
"proposal_id": "adapt-fbfe921ba5",
"pattern_id": "report_ui",
"title": "Improve report layout, visual hierarchy, and chart readability",
"opportunity_type": "artifact-quality",
"action_type": "patch_existing_skill",
"decision": "ready_for_approval_review",
"priority": "medium",
"score": 88,
"score_reasons": [
"support_count=5",
"confidence=0.95",
"risk=medium",
"target_files_present",
"verification_present",
"approval_required"
],
"policy_reason": "Repeated report layout feedback maps to existing renderer and design doctrine changes.",
"risk_level": "medium",
"requires_approval": true,
"write_allowed_without_approval": false,
"evidence_count": 5,
"target_files": [
"scripts/render_skill_overview.py",
"references/artifact-design-doctrine.md",
"tests/verify_skill_overview.py"
],
"verification_commands": [
"python3 tests/verify_skill_overview.py",
"python3 tests/verify_skill_report_charts.py"
]
},
{
"opportunity_id": "skillops-531e13c1c6",
"proposal_id": "adapt-59d219a1fb",
"pattern_id": "approval_safety",
"title": "Keep adaptive iteration approval-gated",
"opportunity_type": "governance",
"action_type": "agents_update",
"decision": "proposal_review",
"priority": "medium",
"score": 82,
"score_reasons": [
"support_count=2",
"confidence=0.79",
"risk=low",
"target_files_present",
"verification_present",
"approval_required"
],
"policy_reason": "Repeated privacy and approval signals should tighten durable operating guidance.",
"risk_level": "low",
"requires_approval": true,
"write_allowed_without_approval": false,
"evidence_count": 2,
"target_files": [
"references/user-memory-policy.md",
"references/autonomous-adaptation.md",
"schemas/adaptation-proposal.schema.json"
],
"verification_commands": [
"python3 tests/verify_adaptation_safety.py"
]
},
{
"opportunity_id": "skillops-709ef884f3",
"proposal_id": "adapt-18c7517f3d",
"pattern_id": "language_default",
"title": "Keep reports Chinese-first with optional English",
"opportunity_type": "report-experience",
"action_type": "patch_existing_skill",
"decision": "proposal_review",
"priority": "medium",
"score": 82,
"score_reasons": [
"support_count=2",
"confidence=0.79",
"risk=low",
"target_files_present",
"verification_present",
"approval_required"
],
"policy_reason": "Repeated language preferences can improve existing report templates after approval.",
"risk_level": "low",
"requires_approval": true,
"write_allowed_without_approval": false,
"evidence_count": 2,
"target_files": [
"scripts/render_skill_overview.py",
"references/artifact-design-doctrine.md"
],
"verification_commands": [
"python3 tests/verify_skill_overview.py"
]
},
{
"opportunity_id": "skillops-f9e43237aa",
"proposal_id": "adapt-457baca160",
"pattern_id": "delivery_format",
"title": "Make generated artifact paths explicit in CLI output",
"opportunity_type": "artifact-discoverability",
"action_type": "patch_existing_skill",
"decision": "proposal_review",
"priority": "medium",
"score": 82,
"score_reasons": [
"support_count=2",
"confidence=0.79",
"risk=low",
"target_files_present",
"verification_present",
"approval_required"
],
"policy_reason": "Repeated delivery-path requests can improve CLI and README artifact discoverability.",
"risk_level": "low",
"requires_approval": true,
"write_allowed_without_approval": false,
"evidence_count": 2,
"target_files": [
"scripts/yao.py",
"README.md"
],
"verification_commands": [
"python3 tests/verify_yao_cli.py"
]
},
{
"opportunity_id": "skillops-0a3a2de7c3",
"proposal_id": "adapt-abfee25d3a",
"pattern_id": "evidence_testing",
"title": "Attach tests and evidence refresh to each upgrade",
"opportunity_type": "quality-gate",
"action_type": "add_eval",
"decision": "proposal_review",
"priority": "medium",
"score": 74,
"score_reasons": [
"support_count=2",
"confidence=0.79",
"risk=medium",
"target_files_present",
"verification_present",
"approval_required"
],
"policy_reason": "Repeated verification and evidence requests should become focused checks.",
"risk_level": "medium",
"requires_approval": true,
"write_allowed_without_approval": false,
"evidence_count": 2,
"target_files": [
"tests/verify_adaptation_safety.py",
"scripts/render_skill_os2_coverage.py",
"reports/skill_os2_coverage.json"
],
"verification_commands": [
"python3 tests/verify_adaptation_safety.py",
"python3 tests/verify_skill_os2_coverage.py"
]
}
],
"decision_policy": {
"schema_version": "1.0",
"contract": "skillops-opportunity-scoring",
"score_range": [
0,
100
],
"score_bands": {
"85-100": "ready_for_approval_review",
"70-84": "proposal_review",
"50-69": "observe_more_evidence",
"0-49": "report_only_or_no_action"
},
"action_types": [
"add_eval",
"agents_update",
"patch_existing_skill",
"report_only"
],
"writes_source_files": false,
"auto_patch_enabled": false,
"approval_required_for_writes": true
},
"approval": {
"approval_count": 0,
"pending_review_count": 0,
"applied_count": 0,
"rollback_count": 0
},
"release_state": {
"local_blueprint_ready": true,
"public_world_class_ready": false,
"world_class_pending_count": 4,
"release_lock_ready": true,
"evidence_consistency_ok": true
},
"actions": [
{
"key": "review-adaptation-proposals",
"priority": "high",
"action": "Review proposal-only adaptation items before preparing any approval ledger entry."
},
{
"key": "close-world-class-evidence",
"priority": "high",
"action": "Collect accepted external or human evidence for the pending world-class ledger entries."
}
],
"failures": [],
"source_reports": {
"patterns": "reports/user_patterns.json",
"proposals": "reports/adaptation_proposals.json",
"approval_ledger": "reports/adaptation_approval_ledger.json",
"regression": "reports/adaptation_regression_report.json",
"skill_os2_coverage": "reports/skill_os2_coverage.json",
"world_class_ledger": "reports/world_class_evidence_ledger.json",
"evidence_consistency": "reports/evidence_consistency.json",
"benchmark_reproducibility": "reports/benchmark_reproducibility.json"
},
"artifacts": {
"json": "reports/skillops/daily/2026-06-20.json",
"markdown": "reports/skillops/daily/2026-06-20.md"
}
}
-174
View File
@@ -1,174 +0,0 @@
# Daily SkillOps Report
Generated at: `2026-06-20T12:35:26Z`
## Summary
- decision: `proposal-review`
- source supplied: `false`
- patterns: `5`
- proposals: `5`
- pending approvals: `0`
- applied patches: `0`
- rollbacks: `0`
- local blueprint ready: `true`
- public world-class ready: `false`
- world-class pending: `4`
- release lock ready: `true`
- evidence consistency ok: `true`
This report is an operations cockpit for explicit-source SkillOps. It does not scan private logs, write source files, apply patches, or count as world-class external or human evidence.
## Privacy Boundary
- explicit_source_required_for_scan: `true`
- implicit_private_log_scan: `false`
- raw_content_stored: `false`
- redacted_excerpts_only: `true`
- proposal_only: `true`
- approval_required_for_writes: `true`
- writes_source_files: `false`
- auto_patch_enabled: `false`
- daily_report_counts_as_world_class_evidence: `false`
## Actions
- `high` Review proposal-only adaptation items before preparing any approval ledger entry.
- `high` Collect accepted external or human evidence for the pending world-class ledger entries.
## Opportunities
- count: `5`
- top score: `88`
- ready for approval review: `1`
### Improve report layout, visual hierarchy, and chart readability
- ID: `skillops-4ad91c18dd`
- Action: `patch_existing_skill`
- Decision: `ready_for_approval_review`
- Score: `88`
- Risk: `medium`
- Policy: Repeated report layout feedback maps to existing renderer and design doctrine changes.
### Keep adaptive iteration approval-gated
- ID: `skillops-531e13c1c6`
- Action: `agents_update`
- Decision: `proposal_review`
- Score: `82`
- Risk: `low`
- Policy: Repeated privacy and approval signals should tighten durable operating guidance.
### Keep reports Chinese-first with optional English
- ID: `skillops-709ef884f3`
- Action: `patch_existing_skill`
- Decision: `proposal_review`
- Score: `82`
- Risk: `low`
- Policy: Repeated language preferences can improve existing report templates after approval.
### Make generated artifact paths explicit in CLI output
- ID: `skillops-f9e43237aa`
- Action: `patch_existing_skill`
- Decision: `proposal_review`
- Score: `82`
- Risk: `low`
- Policy: Repeated delivery-path requests can improve CLI and README artifact discoverability.
### Attach tests and evidence refresh to each upgrade
- ID: `skillops-0a3a2de7c3`
- Action: `add_eval`
- Decision: `proposal_review`
- Score: `74`
- Risk: `medium`
- Policy: Repeated verification and evidence requests should become focused checks.
## Patterns
- `language_default`: Default language preference (support `2`, confidence `0.79`)
- `report_ui`: Report UI and visualization preference (support `5`, confidence `0.95`)
- `approval_safety`: Approval and privacy boundary (support `2`, confidence `0.79`)
- `delivery_format`: Delivery format preference (support `2`, confidence `0.79`)
- `evidence_testing`: Evidence and testing preference (support `2`, confidence `0.79`)
## Proposals
### Keep reports Chinese-first with optional English
- ID: `adapt-18c7517f3d`
- Pattern: `language_default`
- Status: `proposal-only`
- Risk: `low`
- Requires approval: `true`
- Target files:
- `scripts/render_skill_overview.py`
- `references/artifact-design-doctrine.md`
- Verification:
- `python3 tests/verify_skill_overview.py`
### Improve report layout, visual hierarchy, and chart readability
- ID: `adapt-fbfe921ba5`
- Pattern: `report_ui`
- Status: `proposal-only`
- Risk: `medium`
- Requires approval: `true`
- Target files:
- `scripts/render_skill_overview.py`
- `references/artifact-design-doctrine.md`
- `tests/verify_skill_overview.py`
- Verification:
- `python3 tests/verify_skill_overview.py`
- `python3 tests/verify_skill_report_charts.py`
### Keep adaptive iteration approval-gated
- ID: `adapt-59d219a1fb`
- Pattern: `approval_safety`
- Status: `proposal-only`
- Risk: `low`
- Requires approval: `true`
- Target files:
- `references/user-memory-policy.md`
- `references/autonomous-adaptation.md`
- `schemas/adaptation-proposal.schema.json`
- Verification:
- `python3 tests/verify_adaptation_safety.py`
### Make generated artifact paths explicit in CLI output
- ID: `adapt-457baca160`
- Pattern: `delivery_format`
- Status: `proposal-only`
- Risk: `low`
- Requires approval: `true`
- Target files:
- `scripts/yao.py`
- `README.md`
- Verification:
- `python3 tests/verify_yao_cli.py`
### Attach tests and evidence refresh to each upgrade
- ID: `adapt-abfee25d3a`
- Pattern: `evidence_testing`
- Status: `proposal-only`
- Risk: `medium`
- Requires approval: `true`
- Target files:
- `tests/verify_adaptation_safety.py`
- `scripts/render_skill_os2_coverage.py`
- `reports/skill_os2_coverage.json`
- Verification:
- `python3 tests/verify_adaptation_safety.py`
- `python3 tests/verify_skill_os2_coverage.py`
## Evidence
- patterns: `reports/user_patterns.json`
- proposals: `reports/adaptation_proposals.json`
- approval_ledger: `reports/adaptation_approval_ledger.json`
- regression: `reports/adaptation_regression_report.json`
- skill_os2_coverage: `reports/skill_os2_coverage.json`
- world_class_ledger: `reports/world_class_evidence_ledger.json`
- evidence_consistency: `reports/evidence_consistency.json`
- benchmark_reproducibility: `reports/benchmark_reproducibility.json`
-513
View File
@@ -1,513 +0,0 @@
{
"schema_version": "1.0",
"ok": true,
"generated_at": "2026-06-21",
"skill_dir": ".",
"decision": "proposal-review",
"source_supplied": false,
"pattern_count": 5,
"proposal_count": 5,
"approval_count": 0,
"pending_review_count": 0,
"applied_count": 0,
"rollback_count": 0,
"local_blueprint_ready": true,
"public_world_class_ready": false,
"world_class_pending_count": 4,
"release_lock_ready": true,
"evidence_consistency_ok": true,
"writes_source_files": false,
"auto_patch_enabled": false,
"failure_count": 0,
"summary": {
"decision": "proposal-review",
"source_supplied": false,
"pattern_count": 5,
"proposal_count": 5,
"approval_count": 0,
"pending_review_count": 0,
"applied_count": 0,
"rollback_count": 0,
"local_blueprint_ready": true,
"public_world_class_ready": false,
"world_class_pending_count": 4,
"release_lock_ready": true,
"evidence_consistency_ok": true,
"writes_source_files": false,
"auto_patch_enabled": false,
"failure_count": 0
},
"operations_contract": {
"schema_version": "1.0",
"contract": "daily-skillops-report",
"explicit_source_required_for_scan": true,
"implicit_private_log_scan": false,
"raw_content_stored": false,
"redacted_excerpts_only": true,
"proposal_only": true,
"approval_required_for_writes": true,
"writes_source_files": false,
"auto_patch_enabled": false,
"daily_report_counts_as_world_class_evidence": false
},
"report_contract": {
"schema_version": "1.0",
"contract": "daily-skillops-report",
"top_level_mirrors_summary": true,
"summary_fields": [
"decision",
"source_supplied",
"pattern_count",
"proposal_count",
"approval_count",
"pending_review_count",
"applied_count",
"rollback_count",
"local_blueprint_ready",
"public_world_class_ready",
"world_class_pending_count",
"release_lock_ready",
"evidence_consistency_ok",
"writes_source_files",
"auto_patch_enabled",
"failure_count"
],
"source_of_truth": [
"summary",
"operations_contract"
]
},
"source": {
"path": "evals/adaptation/user_signals.example.jsonl",
"fingerprint_sha256": "48f94a4f3b82f90db29921c13d09c765ec10aabfde1adce65710c137cc6c5abf",
"record_count": 8,
"explicit_source": true,
"raw_content_stored": false,
"redacted_excerpts_only": true
},
"patterns": [
{
"pattern_id": "language_default",
"label": "Default language preference",
"signal_type": "report-language",
"support_count": 2,
"confidence": 0.79,
"reason": "2 redacted records matched repeated report-language signals.",
"recommended_action": "Keep generated reports Chinese-first with an English switch where user-facing.",
"evidence": [
{
"record_id": "line-1",
"excerpt": "新生成的 Skill 报告默认使用中文简体,并在右上角提供英文切换。"
},
{
"record_id": "line-2",
"excerpt": "HTML 报告需要双语能力,但默认内容应该保持中文简体。"
}
]
},
{
"pattern_id": "report_ui",
"label": "Report UI and visualization preference",
"signal_type": "artifact-design",
"support_count": 5,
"confidence": 0.95,
"reason": "5 redacted records matched repeated artifact-design signals.",
"recommended_action": "Prioritize white-background Kami-style reports with readable charts and stable navigation.",
"evidence": [
{
"record_id": "line-1",
"excerpt": "新生成的 Skill 报告默认使用中文简体,并在右上角提供英文切换。"
},
{
"record_id": "line-2",
"excerpt": "HTML 报告需要双语能力,但默认内容应该保持中文简体。"
},
{
"record_id": "line-3",
"excerpt": "报告排版采用白底 Kami 风格,图表、模块和导航都要清晰。"
}
]
},
{
"pattern_id": "approval_safety",
"label": "Approval and privacy boundary",
"signal_type": "governance",
"support_count": 2,
"confidence": 0.79,
"reason": "2 redacted records matched repeated governance signals.",
"recommended_action": "Keep adaptive work proposal-only until a reviewer approves an allowlisted patch path.",
"evidence": [
{
"record_id": "line-5",
"excerpt": "自适应升级必须先生成提案,不能直接自动修改源文件。"
},
{
"record_id": "line-6",
"excerpt": "用户偏好扫描必须由用户提供明确路径,不要默认扫描私人日志。"
}
]
},
{
"pattern_id": "delivery_format",
"label": "Delivery format preference",
"signal_type": "artifact-format",
"support_count": 2,
"confidence": 0.79,
"reason": "2 redacted records matched repeated artifact-format signals.",
"recommended_action": "Surface stable artifact paths and formats in CLI output and generated summaries.",
"evidence": [
{
"record_id": "line-2",
"excerpt": "HTML 报告需要双语能力,但默认内容应该保持中文简体。"
},
{
"record_id": "line-6",
"excerpt": "用户偏好扫描必须由用户提供明确路径,不要默认扫描私人日志。"
}
]
},
{
"pattern_id": "evidence_testing",
"label": "Evidence and testing preference",
"signal_type": "quality-gate",
"support_count": 2,
"confidence": 0.79,
"reason": "2 redacted records matched repeated quality-gate signals.",
"recommended_action": "Attach focused tests and refreshed evidence reports to every non-trivial skill upgrade.",
"evidence": [
{
"record_id": "line-7",
"excerpt": "每次升级都需要测试、覆盖报告和可审计证据,推送前要跑 CI。"
},
{
"record_id": "line-8",
"excerpt": "涉及 GitHub 推送时,要保留证据链,避免把计划当作完成证明。"
}
]
}
],
"proposals": [
{
"proposal_id": "adapt-18c7517f3d",
"pattern_id": "language_default",
"title": "Keep reports Chinese-first with optional English",
"risk_level": "low",
"status": "proposal-only",
"requires_approval": true,
"target_files": [
"scripts/render_skill_overview.py",
"references/artifact-design-doctrine.md"
],
"verification_commands": [
"python3 tests/verify_skill_overview.py"
]
},
{
"proposal_id": "adapt-fbfe921ba5",
"pattern_id": "report_ui",
"title": "Improve report layout, visual hierarchy, and chart readability",
"risk_level": "medium",
"status": "proposal-only",
"requires_approval": true,
"target_files": [
"scripts/render_skill_overview.py",
"references/artifact-design-doctrine.md",
"tests/verify_skill_overview.py"
],
"verification_commands": [
"python3 tests/verify_skill_overview.py",
"python3 tests/verify_skill_report_charts.py"
]
},
{
"proposal_id": "adapt-59d219a1fb",
"pattern_id": "approval_safety",
"title": "Keep adaptive iteration approval-gated",
"risk_level": "low",
"status": "proposal-only",
"requires_approval": true,
"target_files": [
"references/user-memory-policy.md",
"references/autonomous-adaptation.md",
"schemas/adaptation-proposal.schema.json"
],
"verification_commands": [
"python3 tests/verify_adaptation_safety.py"
]
},
{
"proposal_id": "adapt-457baca160",
"pattern_id": "delivery_format",
"title": "Make generated artifact paths explicit in CLI output",
"risk_level": "low",
"status": "proposal-only",
"requires_approval": true,
"target_files": [
"scripts/yao.py",
"README.md"
],
"verification_commands": [
"python3 tests/verify_yao_cli.py"
]
},
{
"proposal_id": "adapt-abfee25d3a",
"pattern_id": "evidence_testing",
"title": "Attach tests and evidence refresh to each upgrade",
"risk_level": "medium",
"status": "proposal-only",
"requires_approval": true,
"target_files": [
"tests/verify_adaptation_safety.py",
"scripts/render_skill_os2_coverage.py",
"reports/skill_os2_coverage.json"
],
"verification_commands": [
"python3 tests/verify_adaptation_safety.py",
"python3 tests/verify_skill_os2_coverage.py"
]
}
],
"opportunity_summary": {
"opportunity_count": 5,
"top_score": 88,
"ready_for_approval_review_count": 1,
"proposal_review_count": 4,
"observe_more_evidence_count": 0,
"report_only_count": 0,
"action_type_counts": {
"patch_existing_skill": 3,
"agents_update": 1,
"add_eval": 1
},
"decision_counts": {
"ready_for_approval_review": 1,
"proposal_review": 4
}
},
"opportunities": [
{
"opportunity_id": "skillops-4ad91c18dd",
"proposal_id": "adapt-fbfe921ba5",
"pattern_id": "report_ui",
"title": "Improve report layout, visual hierarchy, and chart readability",
"opportunity_type": "artifact-quality",
"action_type": "patch_existing_skill",
"decision": "ready_for_approval_review",
"priority": "medium",
"score": 88,
"score_reasons": [
"support_count=5",
"confidence=0.95",
"risk=medium",
"target_files_present",
"verification_present",
"approval_required"
],
"policy_reason": "Repeated report layout feedback maps to existing renderer and design doctrine changes.",
"risk_level": "medium",
"requires_approval": true,
"write_allowed_without_approval": false,
"evidence_count": 5,
"target_files": [
"scripts/render_skill_overview.py",
"references/artifact-design-doctrine.md",
"tests/verify_skill_overview.py"
],
"verification_commands": [
"python3 tests/verify_skill_overview.py",
"python3 tests/verify_skill_report_charts.py"
]
},
{
"opportunity_id": "skillops-531e13c1c6",
"proposal_id": "adapt-59d219a1fb",
"pattern_id": "approval_safety",
"title": "Keep adaptive iteration approval-gated",
"opportunity_type": "governance",
"action_type": "agents_update",
"decision": "proposal_review",
"priority": "medium",
"score": 82,
"score_reasons": [
"support_count=2",
"confidence=0.79",
"risk=low",
"target_files_present",
"verification_present",
"approval_required"
],
"policy_reason": "Repeated privacy and approval signals should tighten durable operating guidance.",
"risk_level": "low",
"requires_approval": true,
"write_allowed_without_approval": false,
"evidence_count": 2,
"target_files": [
"references/user-memory-policy.md",
"references/autonomous-adaptation.md",
"schemas/adaptation-proposal.schema.json"
],
"verification_commands": [
"python3 tests/verify_adaptation_safety.py"
]
},
{
"opportunity_id": "skillops-709ef884f3",
"proposal_id": "adapt-18c7517f3d",
"pattern_id": "language_default",
"title": "Keep reports Chinese-first with optional English",
"opportunity_type": "report-experience",
"action_type": "patch_existing_skill",
"decision": "proposal_review",
"priority": "medium",
"score": 82,
"score_reasons": [
"support_count=2",
"confidence=0.79",
"risk=low",
"target_files_present",
"verification_present",
"approval_required"
],
"policy_reason": "Repeated language preferences can improve existing report templates after approval.",
"risk_level": "low",
"requires_approval": true,
"write_allowed_without_approval": false,
"evidence_count": 2,
"target_files": [
"scripts/render_skill_overview.py",
"references/artifact-design-doctrine.md"
],
"verification_commands": [
"python3 tests/verify_skill_overview.py"
]
},
{
"opportunity_id": "skillops-f9e43237aa",
"proposal_id": "adapt-457baca160",
"pattern_id": "delivery_format",
"title": "Make generated artifact paths explicit in CLI output",
"opportunity_type": "artifact-discoverability",
"action_type": "patch_existing_skill",
"decision": "proposal_review",
"priority": "medium",
"score": 82,
"score_reasons": [
"support_count=2",
"confidence=0.79",
"risk=low",
"target_files_present",
"verification_present",
"approval_required"
],
"policy_reason": "Repeated delivery-path requests can improve CLI and README artifact discoverability.",
"risk_level": "low",
"requires_approval": true,
"write_allowed_without_approval": false,
"evidence_count": 2,
"target_files": [
"scripts/yao.py",
"README.md"
],
"verification_commands": [
"python3 tests/verify_yao_cli.py"
]
},
{
"opportunity_id": "skillops-0a3a2de7c3",
"proposal_id": "adapt-abfee25d3a",
"pattern_id": "evidence_testing",
"title": "Attach tests and evidence refresh to each upgrade",
"opportunity_type": "quality-gate",
"action_type": "add_eval",
"decision": "proposal_review",
"priority": "medium",
"score": 74,
"score_reasons": [
"support_count=2",
"confidence=0.79",
"risk=medium",
"target_files_present",
"verification_present",
"approval_required"
],
"policy_reason": "Repeated verification and evidence requests should become focused checks.",
"risk_level": "medium",
"requires_approval": true,
"write_allowed_without_approval": false,
"evidence_count": 2,
"target_files": [
"tests/verify_adaptation_safety.py",
"scripts/render_skill_os2_coverage.py",
"reports/skill_os2_coverage.json"
],
"verification_commands": [
"python3 tests/verify_adaptation_safety.py",
"python3 tests/verify_skill_os2_coverage.py"
]
}
],
"decision_policy": {
"schema_version": "1.0",
"contract": "skillops-opportunity-scoring",
"score_range": [
0,
100
],
"score_bands": {
"85-100": "ready_for_approval_review",
"70-84": "proposal_review",
"50-69": "observe_more_evidence",
"0-49": "report_only_or_no_action"
},
"action_types": [
"add_eval",
"agents_update",
"patch_existing_skill",
"report_only"
],
"writes_source_files": false,
"auto_patch_enabled": false,
"approval_required_for_writes": true
},
"approval": {
"approval_count": 0,
"pending_review_count": 0,
"applied_count": 0,
"rollback_count": 0
},
"release_state": {
"local_blueprint_ready": true,
"public_world_class_ready": false,
"world_class_pending_count": 4,
"release_lock_ready": true,
"evidence_consistency_ok": true
},
"actions": [
{
"key": "review-adaptation-proposals",
"priority": "high",
"action": "Review proposal-only adaptation items before preparing any approval ledger entry."
},
{
"key": "close-world-class-evidence",
"priority": "high",
"action": "Collect accepted external or human evidence for the pending world-class ledger entries."
}
],
"failures": [],
"source_reports": {
"patterns": "reports/user_patterns.json",
"proposals": "reports/adaptation_proposals.json",
"approval_ledger": "reports/adaptation_approval_ledger.json",
"regression": "reports/adaptation_regression_report.json",
"skill_os2_coverage": "reports/skill_os2_coverage.json",
"world_class_ledger": "reports/world_class_evidence_ledger.json",
"evidence_consistency": "reports/evidence_consistency.json",
"benchmark_reproducibility": "reports/benchmark_reproducibility.json"
},
"artifacts": {
"json": "reports/skillops/daily/2026-06-21.json",
"markdown": "reports/skillops/daily/2026-06-21.md"
}
}
-174
View File
@@ -1,174 +0,0 @@
# Daily SkillOps Report
Generated at: `2026-06-21`
## Summary
- decision: `proposal-review`
- source supplied: `false`
- patterns: `5`
- proposals: `5`
- pending approvals: `0`
- applied patches: `0`
- rollbacks: `0`
- local blueprint ready: `true`
- public world-class ready: `false`
- world-class pending: `4`
- release lock ready: `true`
- evidence consistency ok: `true`
This report is an operations cockpit for explicit-source SkillOps. It does not scan private logs, write source files, apply patches, or count as world-class external or human evidence.
## Privacy Boundary
- explicit_source_required_for_scan: `true`
- implicit_private_log_scan: `false`
- raw_content_stored: `false`
- redacted_excerpts_only: `true`
- proposal_only: `true`
- approval_required_for_writes: `true`
- writes_source_files: `false`
- auto_patch_enabled: `false`
- daily_report_counts_as_world_class_evidence: `false`
## Actions
- `high` Review proposal-only adaptation items before preparing any approval ledger entry.
- `high` Collect accepted external or human evidence for the pending world-class ledger entries.
## Opportunities
- count: `5`
- top score: `88`
- ready for approval review: `1`
### Improve report layout, visual hierarchy, and chart readability
- ID: `skillops-4ad91c18dd`
- Action: `patch_existing_skill`
- Decision: `ready_for_approval_review`
- Score: `88`
- Risk: `medium`
- Policy: Repeated report layout feedback maps to existing renderer and design doctrine changes.
### Keep adaptive iteration approval-gated
- ID: `skillops-531e13c1c6`
- Action: `agents_update`
- Decision: `proposal_review`
- Score: `82`
- Risk: `low`
- Policy: Repeated privacy and approval signals should tighten durable operating guidance.
### Keep reports Chinese-first with optional English
- ID: `skillops-709ef884f3`
- Action: `patch_existing_skill`
- Decision: `proposal_review`
- Score: `82`
- Risk: `low`
- Policy: Repeated language preferences can improve existing report templates after approval.
### Make generated artifact paths explicit in CLI output
- ID: `skillops-f9e43237aa`
- Action: `patch_existing_skill`
- Decision: `proposal_review`
- Score: `82`
- Risk: `low`
- Policy: Repeated delivery-path requests can improve CLI and README artifact discoverability.
### Attach tests and evidence refresh to each upgrade
- ID: `skillops-0a3a2de7c3`
- Action: `add_eval`
- Decision: `proposal_review`
- Score: `74`
- Risk: `medium`
- Policy: Repeated verification and evidence requests should become focused checks.
## Patterns
- `language_default`: Default language preference (support `2`, confidence `0.79`)
- `report_ui`: Report UI and visualization preference (support `5`, confidence `0.95`)
- `approval_safety`: Approval and privacy boundary (support `2`, confidence `0.79`)
- `delivery_format`: Delivery format preference (support `2`, confidence `0.79`)
- `evidence_testing`: Evidence and testing preference (support `2`, confidence `0.79`)
## Proposals
### Keep reports Chinese-first with optional English
- ID: `adapt-18c7517f3d`
- Pattern: `language_default`
- Status: `proposal-only`
- Risk: `low`
- Requires approval: `true`
- Target files:
- `scripts/render_skill_overview.py`
- `references/artifact-design-doctrine.md`
- Verification:
- `python3 tests/verify_skill_overview.py`
### Improve report layout, visual hierarchy, and chart readability
- ID: `adapt-fbfe921ba5`
- Pattern: `report_ui`
- Status: `proposal-only`
- Risk: `medium`
- Requires approval: `true`
- Target files:
- `scripts/render_skill_overview.py`
- `references/artifact-design-doctrine.md`
- `tests/verify_skill_overview.py`
- Verification:
- `python3 tests/verify_skill_overview.py`
- `python3 tests/verify_skill_report_charts.py`
### Keep adaptive iteration approval-gated
- ID: `adapt-59d219a1fb`
- Pattern: `approval_safety`
- Status: `proposal-only`
- Risk: `low`
- Requires approval: `true`
- Target files:
- `references/user-memory-policy.md`
- `references/autonomous-adaptation.md`
- `schemas/adaptation-proposal.schema.json`
- Verification:
- `python3 tests/verify_adaptation_safety.py`
### Make generated artifact paths explicit in CLI output
- ID: `adapt-457baca160`
- Pattern: `delivery_format`
- Status: `proposal-only`
- Risk: `low`
- Requires approval: `true`
- Target files:
- `scripts/yao.py`
- `README.md`
- Verification:
- `python3 tests/verify_yao_cli.py`
### Attach tests and evidence refresh to each upgrade
- ID: `adapt-abfee25d3a`
- Pattern: `evidence_testing`
- Status: `proposal-only`
- Risk: `medium`
- Requires approval: `true`
- Target files:
- `tests/verify_adaptation_safety.py`
- `scripts/render_skill_os2_coverage.py`
- `reports/skill_os2_coverage.json`
- Verification:
- `python3 tests/verify_adaptation_safety.py`
- `python3 tests/verify_skill_os2_coverage.py`
## Evidence
- patterns: `reports/user_patterns.json`
- proposals: `reports/adaptation_proposals.json`
- approval_ledger: `reports/adaptation_approval_ledger.json`
- regression: `reports/adaptation_regression_report.json`
- skill_os2_coverage: `reports/skill_os2_coverage.json`
- world_class_ledger: `reports/world_class_evidence_ledger.json`
- evidence_consistency: `reports/evidence_consistency.json`
- benchmark_reproducibility: `reports/benchmark_reproducibility.json`
-513
View File
@@ -1,513 +0,0 @@
{
"schema_version": "1.0",
"ok": true,
"generated_at": "2026-07-02T06:33:07Z",
"skill_dir": ".",
"decision": "proposal-review",
"source_supplied": false,
"pattern_count": 5,
"proposal_count": 5,
"approval_count": 0,
"pending_review_count": 0,
"applied_count": 0,
"rollback_count": 0,
"local_blueprint_ready": true,
"public_world_class_ready": false,
"world_class_pending_count": 4,
"release_lock_ready": false,
"evidence_consistency_ok": true,
"writes_source_files": false,
"auto_patch_enabled": false,
"failure_count": 0,
"summary": {
"decision": "proposal-review",
"source_supplied": false,
"pattern_count": 5,
"proposal_count": 5,
"approval_count": 0,
"pending_review_count": 0,
"applied_count": 0,
"rollback_count": 0,
"local_blueprint_ready": true,
"public_world_class_ready": false,
"world_class_pending_count": 4,
"release_lock_ready": false,
"evidence_consistency_ok": true,
"writes_source_files": false,
"auto_patch_enabled": false,
"failure_count": 0
},
"operations_contract": {
"schema_version": "1.0",
"contract": "daily-skillops-report",
"explicit_source_required_for_scan": true,
"implicit_private_log_scan": false,
"raw_content_stored": false,
"redacted_excerpts_only": true,
"proposal_only": true,
"approval_required_for_writes": true,
"writes_source_files": false,
"auto_patch_enabled": false,
"daily_report_counts_as_world_class_evidence": false
},
"report_contract": {
"schema_version": "1.0",
"contract": "daily-skillops-report",
"top_level_mirrors_summary": true,
"summary_fields": [
"decision",
"source_supplied",
"pattern_count",
"proposal_count",
"approval_count",
"pending_review_count",
"applied_count",
"rollback_count",
"local_blueprint_ready",
"public_world_class_ready",
"world_class_pending_count",
"release_lock_ready",
"evidence_consistency_ok",
"writes_source_files",
"auto_patch_enabled",
"failure_count"
],
"source_of_truth": [
"summary",
"operations_contract"
]
},
"source": {
"path": "evals/adaptation/user_signals.example.jsonl",
"fingerprint_sha256": "48f94a4f3b82f90db29921c13d09c765ec10aabfde1adce65710c137cc6c5abf",
"record_count": 8,
"explicit_source": true,
"raw_content_stored": false,
"redacted_excerpts_only": true
},
"patterns": [
{
"pattern_id": "language_default",
"label": "Default language preference",
"signal_type": "report-language",
"support_count": 2,
"confidence": 0.79,
"reason": "2 redacted records matched repeated report-language signals.",
"recommended_action": "Keep generated reports Chinese-first with an English switch where user-facing.",
"evidence": [
{
"record_id": "line-1",
"excerpt": "新生成的 Skill 报告默认使用中文简体,并在右上角提供英文切换。"
},
{
"record_id": "line-2",
"excerpt": "HTML 报告需要双语能力,但默认内容应该保持中文简体。"
}
]
},
{
"pattern_id": "report_ui",
"label": "Report UI and visualization preference",
"signal_type": "artifact-design",
"support_count": 5,
"confidence": 0.95,
"reason": "5 redacted records matched repeated artifact-design signals.",
"recommended_action": "Prioritize white-background Kami-style reports with readable charts and stable navigation.",
"evidence": [
{
"record_id": "line-1",
"excerpt": "新生成的 Skill 报告默认使用中文简体,并在右上角提供英文切换。"
},
{
"record_id": "line-2",
"excerpt": "HTML 报告需要双语能力,但默认内容应该保持中文简体。"
},
{
"record_id": "line-3",
"excerpt": "报告排版采用白底 Kami 风格,图表、模块和导航都要清晰。"
}
]
},
{
"pattern_id": "approval_safety",
"label": "Approval and privacy boundary",
"signal_type": "governance",
"support_count": 2,
"confidence": 0.79,
"reason": "2 redacted records matched repeated governance signals.",
"recommended_action": "Keep adaptive work proposal-only until a reviewer approves an allowlisted patch path.",
"evidence": [
{
"record_id": "line-5",
"excerpt": "自适应升级必须先生成提案,不能直接自动修改源文件。"
},
{
"record_id": "line-6",
"excerpt": "用户偏好扫描必须由用户提供明确路径,不要默认扫描私人日志。"
}
]
},
{
"pattern_id": "delivery_format",
"label": "Delivery format preference",
"signal_type": "artifact-format",
"support_count": 2,
"confidence": 0.79,
"reason": "2 redacted records matched repeated artifact-format signals.",
"recommended_action": "Surface stable artifact paths and formats in CLI output and generated summaries.",
"evidence": [
{
"record_id": "line-2",
"excerpt": "HTML 报告需要双语能力,但默认内容应该保持中文简体。"
},
{
"record_id": "line-6",
"excerpt": "用户偏好扫描必须由用户提供明确路径,不要默认扫描私人日志。"
}
]
},
{
"pattern_id": "evidence_testing",
"label": "Evidence and testing preference",
"signal_type": "quality-gate",
"support_count": 2,
"confidence": 0.79,
"reason": "2 redacted records matched repeated quality-gate signals.",
"recommended_action": "Attach focused tests and refreshed evidence reports to every non-trivial skill upgrade.",
"evidence": [
{
"record_id": "line-7",
"excerpt": "每次升级都需要测试、覆盖报告和可审计证据,推送前要跑 CI。"
},
{
"record_id": "line-8",
"excerpt": "涉及 GitHub 推送时,要保留证据链,避免把计划当作完成证明。"
}
]
}
],
"proposals": [
{
"proposal_id": "adapt-18c7517f3d",
"pattern_id": "language_default",
"title": "Keep reports Chinese-first with optional English",
"risk_level": "low",
"status": "proposal-only",
"requires_approval": true,
"target_files": [
"scripts/render_skill_overview.py",
"references/artifact-design-doctrine.md"
],
"verification_commands": [
"python3 tests/verify_skill_overview.py"
]
},
{
"proposal_id": "adapt-fbfe921ba5",
"pattern_id": "report_ui",
"title": "Improve report layout, visual hierarchy, and chart readability",
"risk_level": "medium",
"status": "proposal-only",
"requires_approval": true,
"target_files": [
"scripts/render_skill_overview.py",
"references/artifact-design-doctrine.md",
"tests/verify_skill_overview.py"
],
"verification_commands": [
"python3 tests/verify_skill_overview.py",
"python3 tests/verify_skill_report_charts.py"
]
},
{
"proposal_id": "adapt-59d219a1fb",
"pattern_id": "approval_safety",
"title": "Keep adaptive iteration approval-gated",
"risk_level": "low",
"status": "proposal-only",
"requires_approval": true,
"target_files": [
"references/user-memory-policy.md",
"references/autonomous-adaptation.md",
"schemas/adaptation-proposal.schema.json"
],
"verification_commands": [
"python3 tests/verify_adaptation_safety.py"
]
},
{
"proposal_id": "adapt-457baca160",
"pattern_id": "delivery_format",
"title": "Make generated artifact paths explicit in CLI output",
"risk_level": "low",
"status": "proposal-only",
"requires_approval": true,
"target_files": [
"scripts/yao.py",
"README.md"
],
"verification_commands": [
"python3 tests/verify_yao_cli.py"
]
},
{
"proposal_id": "adapt-abfee25d3a",
"pattern_id": "evidence_testing",
"title": "Attach tests and evidence refresh to each upgrade",
"risk_level": "medium",
"status": "proposal-only",
"requires_approval": true,
"target_files": [
"tests/verify_adaptation_safety.py",
"scripts/render_skill_os2_coverage.py",
"reports/skill_os2_coverage.json"
],
"verification_commands": [
"python3 tests/verify_adaptation_safety.py",
"python3 tests/verify_skill_os2_coverage.py"
]
}
],
"opportunity_summary": {
"opportunity_count": 5,
"top_score": 88,
"ready_for_approval_review_count": 1,
"proposal_review_count": 4,
"observe_more_evidence_count": 0,
"report_only_count": 0,
"action_type_counts": {
"patch_existing_skill": 3,
"agents_update": 1,
"add_eval": 1
},
"decision_counts": {
"ready_for_approval_review": 1,
"proposal_review": 4
}
},
"opportunities": [
{
"opportunity_id": "skillops-4ad91c18dd",
"proposal_id": "adapt-fbfe921ba5",
"pattern_id": "report_ui",
"title": "Improve report layout, visual hierarchy, and chart readability",
"opportunity_type": "artifact-quality",
"action_type": "patch_existing_skill",
"decision": "ready_for_approval_review",
"priority": "medium",
"score": 88,
"score_reasons": [
"support_count=5",
"confidence=0.95",
"risk=medium",
"target_files_present",
"verification_present",
"approval_required"
],
"policy_reason": "Repeated report layout feedback maps to existing renderer and design doctrine changes.",
"risk_level": "medium",
"requires_approval": true,
"write_allowed_without_approval": false,
"evidence_count": 5,
"target_files": [
"scripts/render_skill_overview.py",
"references/artifact-design-doctrine.md",
"tests/verify_skill_overview.py"
],
"verification_commands": [
"python3 tests/verify_skill_overview.py",
"python3 tests/verify_skill_report_charts.py"
]
},
{
"opportunity_id": "skillops-531e13c1c6",
"proposal_id": "adapt-59d219a1fb",
"pattern_id": "approval_safety",
"title": "Keep adaptive iteration approval-gated",
"opportunity_type": "governance",
"action_type": "agents_update",
"decision": "proposal_review",
"priority": "medium",
"score": 82,
"score_reasons": [
"support_count=2",
"confidence=0.79",
"risk=low",
"target_files_present",
"verification_present",
"approval_required"
],
"policy_reason": "Repeated privacy and approval signals should tighten durable operating guidance.",
"risk_level": "low",
"requires_approval": true,
"write_allowed_without_approval": false,
"evidence_count": 2,
"target_files": [
"references/user-memory-policy.md",
"references/autonomous-adaptation.md",
"schemas/adaptation-proposal.schema.json"
],
"verification_commands": [
"python3 tests/verify_adaptation_safety.py"
]
},
{
"opportunity_id": "skillops-709ef884f3",
"proposal_id": "adapt-18c7517f3d",
"pattern_id": "language_default",
"title": "Keep reports Chinese-first with optional English",
"opportunity_type": "report-experience",
"action_type": "patch_existing_skill",
"decision": "proposal_review",
"priority": "medium",
"score": 82,
"score_reasons": [
"support_count=2",
"confidence=0.79",
"risk=low",
"target_files_present",
"verification_present",
"approval_required"
],
"policy_reason": "Repeated language preferences can improve existing report templates after approval.",
"risk_level": "low",
"requires_approval": true,
"write_allowed_without_approval": false,
"evidence_count": 2,
"target_files": [
"scripts/render_skill_overview.py",
"references/artifact-design-doctrine.md"
],
"verification_commands": [
"python3 tests/verify_skill_overview.py"
]
},
{
"opportunity_id": "skillops-f9e43237aa",
"proposal_id": "adapt-457baca160",
"pattern_id": "delivery_format",
"title": "Make generated artifact paths explicit in CLI output",
"opportunity_type": "artifact-discoverability",
"action_type": "patch_existing_skill",
"decision": "proposal_review",
"priority": "medium",
"score": 82,
"score_reasons": [
"support_count=2",
"confidence=0.79",
"risk=low",
"target_files_present",
"verification_present",
"approval_required"
],
"policy_reason": "Repeated delivery-path requests can improve CLI and README artifact discoverability.",
"risk_level": "low",
"requires_approval": true,
"write_allowed_without_approval": false,
"evidence_count": 2,
"target_files": [
"scripts/yao.py",
"README.md"
],
"verification_commands": [
"python3 tests/verify_yao_cli.py"
]
},
{
"opportunity_id": "skillops-0a3a2de7c3",
"proposal_id": "adapt-abfee25d3a",
"pattern_id": "evidence_testing",
"title": "Attach tests and evidence refresh to each upgrade",
"opportunity_type": "quality-gate",
"action_type": "add_eval",
"decision": "proposal_review",
"priority": "medium",
"score": 74,
"score_reasons": [
"support_count=2",
"confidence=0.79",
"risk=medium",
"target_files_present",
"verification_present",
"approval_required"
],
"policy_reason": "Repeated verification and evidence requests should become focused checks.",
"risk_level": "medium",
"requires_approval": true,
"write_allowed_without_approval": false,
"evidence_count": 2,
"target_files": [
"tests/verify_adaptation_safety.py",
"scripts/render_skill_os2_coverage.py",
"reports/skill_os2_coverage.json"
],
"verification_commands": [
"python3 tests/verify_adaptation_safety.py",
"python3 tests/verify_skill_os2_coverage.py"
]
}
],
"decision_policy": {
"schema_version": "1.0",
"contract": "skillops-opportunity-scoring",
"score_range": [
0,
100
],
"score_bands": {
"85-100": "ready_for_approval_review",
"70-84": "proposal_review",
"50-69": "observe_more_evidence",
"0-49": "report_only_or_no_action"
},
"action_types": [
"add_eval",
"agents_update",
"patch_existing_skill",
"report_only"
],
"writes_source_files": false,
"auto_patch_enabled": false,
"approval_required_for_writes": true
},
"approval": {
"approval_count": 0,
"pending_review_count": 0,
"applied_count": 0,
"rollback_count": 0
},
"release_state": {
"local_blueprint_ready": true,
"public_world_class_ready": false,
"world_class_pending_count": 4,
"release_lock_ready": false,
"evidence_consistency_ok": true
},
"actions": [
{
"key": "review-adaptation-proposals",
"priority": "high",
"action": "Review proposal-only adaptation items before preparing any approval ledger entry."
},
{
"key": "close-world-class-evidence",
"priority": "high",
"action": "Collect accepted external or human evidence for the pending world-class ledger entries."
}
],
"failures": [],
"source_reports": {
"patterns": "reports/user_patterns.json",
"proposals": "reports/adaptation_proposals.json",
"approval_ledger": "reports/adaptation_approval_ledger.json",
"regression": "reports/adaptation_regression_report.json",
"skill_os2_coverage": "reports/skill_os2_coverage.json",
"world_class_ledger": "reports/world_class_evidence_ledger.json",
"evidence_consistency": "reports/evidence_consistency.json",
"benchmark_reproducibility": "reports/benchmark_reproducibility.json"
},
"artifacts": {
"json": "reports/skillops/daily/2026-07-02.json",
"markdown": "reports/skillops/daily/2026-07-02.md"
}
}
-174
View File
@@ -1,174 +0,0 @@
# Daily SkillOps Report
Generated at: `2026-07-02T06:33:07Z`
## Summary
- decision: `proposal-review`
- source supplied: `false`
- patterns: `5`
- proposals: `5`
- pending approvals: `0`
- applied patches: `0`
- rollbacks: `0`
- local blueprint ready: `true`
- public world-class ready: `false`
- world-class pending: `4`
- release lock ready: `false`
- evidence consistency ok: `true`
This report is an operations cockpit for explicit-source SkillOps. It does not scan private logs, write source files, apply patches, or count as world-class external or human evidence.
## Privacy Boundary
- explicit_source_required_for_scan: `true`
- implicit_private_log_scan: `false`
- raw_content_stored: `false`
- redacted_excerpts_only: `true`
- proposal_only: `true`
- approval_required_for_writes: `true`
- writes_source_files: `false`
- auto_patch_enabled: `false`
- daily_report_counts_as_world_class_evidence: `false`
## Actions
- `high` Review proposal-only adaptation items before preparing any approval ledger entry.
- `high` Collect accepted external or human evidence for the pending world-class ledger entries.
## Opportunities
- count: `5`
- top score: `88`
- ready for approval review: `1`
### Improve report layout, visual hierarchy, and chart readability
- ID: `skillops-4ad91c18dd`
- Action: `patch_existing_skill`
- Decision: `ready_for_approval_review`
- Score: `88`
- Risk: `medium`
- Policy: Repeated report layout feedback maps to existing renderer and design doctrine changes.
### Keep adaptive iteration approval-gated
- ID: `skillops-531e13c1c6`
- Action: `agents_update`
- Decision: `proposal_review`
- Score: `82`
- Risk: `low`
- Policy: Repeated privacy and approval signals should tighten durable operating guidance.
### Keep reports Chinese-first with optional English
- ID: `skillops-709ef884f3`
- Action: `patch_existing_skill`
- Decision: `proposal_review`
- Score: `82`
- Risk: `low`
- Policy: Repeated language preferences can improve existing report templates after approval.
### Make generated artifact paths explicit in CLI output
- ID: `skillops-f9e43237aa`
- Action: `patch_existing_skill`
- Decision: `proposal_review`
- Score: `82`
- Risk: `low`
- Policy: Repeated delivery-path requests can improve CLI and README artifact discoverability.
### Attach tests and evidence refresh to each upgrade
- ID: `skillops-0a3a2de7c3`
- Action: `add_eval`
- Decision: `proposal_review`
- Score: `74`
- Risk: `medium`
- Policy: Repeated verification and evidence requests should become focused checks.
## Patterns
- `language_default`: Default language preference (support `2`, confidence `0.79`)
- `report_ui`: Report UI and visualization preference (support `5`, confidence `0.95`)
- `approval_safety`: Approval and privacy boundary (support `2`, confidence `0.79`)
- `delivery_format`: Delivery format preference (support `2`, confidence `0.79`)
- `evidence_testing`: Evidence and testing preference (support `2`, confidence `0.79`)
## Proposals
### Keep reports Chinese-first with optional English
- ID: `adapt-18c7517f3d`
- Pattern: `language_default`
- Status: `proposal-only`
- Risk: `low`
- Requires approval: `true`
- Target files:
- `scripts/render_skill_overview.py`
- `references/artifact-design-doctrine.md`
- Verification:
- `python3 tests/verify_skill_overview.py`
### Improve report layout, visual hierarchy, and chart readability
- ID: `adapt-fbfe921ba5`
- Pattern: `report_ui`
- Status: `proposal-only`
- Risk: `medium`
- Requires approval: `true`
- Target files:
- `scripts/render_skill_overview.py`
- `references/artifact-design-doctrine.md`
- `tests/verify_skill_overview.py`
- Verification:
- `python3 tests/verify_skill_overview.py`
- `python3 tests/verify_skill_report_charts.py`
### Keep adaptive iteration approval-gated
- ID: `adapt-59d219a1fb`
- Pattern: `approval_safety`
- Status: `proposal-only`
- Risk: `low`
- Requires approval: `true`
- Target files:
- `references/user-memory-policy.md`
- `references/autonomous-adaptation.md`
- `schemas/adaptation-proposal.schema.json`
- Verification:
- `python3 tests/verify_adaptation_safety.py`
### Make generated artifact paths explicit in CLI output
- ID: `adapt-457baca160`
- Pattern: `delivery_format`
- Status: `proposal-only`
- Risk: `low`
- Requires approval: `true`
- Target files:
- `scripts/yao.py`
- `README.md`
- Verification:
- `python3 tests/verify_yao_cli.py`
### Attach tests and evidence refresh to each upgrade
- ID: `adapt-abfee25d3a`
- Pattern: `evidence_testing`
- Status: `proposal-only`
- Risk: `medium`
- Requires approval: `true`
- Target files:
- `tests/verify_adaptation_safety.py`
- `scripts/render_skill_os2_coverage.py`
- `reports/skill_os2_coverage.json`
- Verification:
- `python3 tests/verify_adaptation_safety.py`
- `python3 tests/verify_skill_os2_coverage.py`
## Evidence
- patterns: `reports/user_patterns.json`
- proposals: `reports/adaptation_proposals.json`
- approval_ledger: `reports/adaptation_approval_ledger.json`
- regression: `reports/adaptation_regression_report.json`
- skill_os2_coverage: `reports/skill_os2_coverage.json`
- world_class_ledger: `reports/world_class_evidence_ledger.json`
- evidence_consistency: `reports/evidence_consistency.json`
- benchmark_reproducibility: `reports/benchmark_reproducibility.json`
+14 -16
View File
@@ -1,21 +1,21 @@
{
"schema_version": "1.0",
"ok": true,
"generated_at": "2026-06-21",
"generated_at": "2026-06-17T08:58:54Z",
"skill_dir": ".",
"decision": "curator-review",
"week_id": "2026-W25",
"daily_report_count": 4,
"opportunity_count": 20,
"daily_report_count": 2,
"opportunity_count": 10,
"unique_opportunity_count": 5,
"ready_for_approval_review_count": 1,
"proposal_review_count": 4,
"observe_more_evidence_count": 0,
"report_only_count": 0,
"top_score": 88,
"skill_count": 11,
"skill_count": 12,
"actionable_portfolio_issue_count": 0,
"release_lock_ready": true,
"release_lock_ready": false,
"evidence_consistency_ok": true,
"public_world_class_ready": false,
"world_class_pending_count": 4,
@@ -25,17 +25,17 @@
"summary": {
"decision": "curator-review",
"week_id": "2026-W25",
"daily_report_count": 4,
"opportunity_count": 20,
"daily_report_count": 2,
"opportunity_count": 10,
"unique_opportunity_count": 5,
"ready_for_approval_review_count": 1,
"proposal_review_count": 4,
"observe_more_evidence_count": 0,
"report_only_count": 0,
"top_score": 88,
"skill_count": 11,
"skill_count": 12,
"actionable_portfolio_issue_count": 0,
"release_lock_ready": true,
"release_lock_ready": false,
"evidence_consistency_ok": true,
"public_world_class_ready": false,
"world_class_pending_count": 4,
@@ -90,9 +90,7 @@
},
"daily_reports": [
"reports/skillops/daily/2026-06-16.json",
"reports/skillops/daily/2026-06-17.json",
"reports/skillops/daily/2026-06-20.json",
"reports/skillops/daily/2026-06-21.json"
"reports/skillops/daily/2026-06-17.json"
],
"opportunity_summary": {
"action_type_counts": {
@@ -277,20 +275,20 @@
}
],
"portfolio": {
"skill_count": 11,
"skill_count": 12,
"actionable_issue_count": 0,
"route_collision_count": 5,
"actionable_route_collision_count": 0,
"owner_gap_count": 8,
"owner_gap_count": 9,
"actionable_owner_gap_count": 0,
"stale_count": 9,
"stale_count": 10,
"actionable_stale_count": 0,
"drift_signal_count": 0,
"actionable_drift_signal_count": 0,
"no_route_opportunity_count": 0
},
"release_state": {
"release_lock_ready": true,
"release_lock_ready": false,
"evidence_consistency_ok": true,
"public_world_class_ready": false,
"world_class_pending_count": 4
+7 -7
View File
@@ -1,19 +1,19 @@
# Weekly SkillOps Curator Report
Generated at: `2026-06-21`
Generated at: `2026-06-17T08:58:54Z`
Week: `2026-W25`
## Summary
- decision: `curator-review`
- daily_report_count: `4`
- daily_report_count: `2`
- unique_opportunity_count: `5`
- ready_for_approval_review_count: `1`
- proposal_review_count: `4`
- top_score: `88`
- skill_count: `11`
- skill_count: `12`
- actionable_portfolio_issue_count: `0`
- release_lock_ready: `True`
- release_lock_ready: `False`
- evidence_consistency_ok: `True`
- public_world_class_ready: `False`
- world_class_pending_count: `4`
@@ -89,13 +89,13 @@ This report is a weekly curator cockpit for generated SkillOps evidence. It does
## Portfolio Signals
- skill_count: `11`
- skill_count: `12`
- actionable_issue_count: `0`
- route_collision_count: `5`
- actionable_route_collision_count: `0`
- owner_gap_count: `8`
- owner_gap_count: `9`
- actionable_owner_gap_count: `0`
- stale_count: `9`
- stale_count: `10`
- actionable_stale_count: `0`
- drift_signal_count: `0`
- actionable_drift_signal_count: `0`
-323
View File
@@ -1,323 +0,0 @@
{
"schema_version": "1.0",
"ok": true,
"generated_at": "2026-07-02T06:33:07Z",
"skill_dir": ".",
"decision": "curator-review",
"week_id": "2026-W27",
"daily_report_count": 5,
"opportunity_count": 25,
"unique_opportunity_count": 5,
"ready_for_approval_review_count": 1,
"proposal_review_count": 4,
"observe_more_evidence_count": 0,
"report_only_count": 0,
"top_score": 88,
"skill_count": 11,
"actionable_portfolio_issue_count": 0,
"release_lock_ready": false,
"evidence_consistency_ok": true,
"public_world_class_ready": false,
"world_class_pending_count": 4,
"writes_source_files": false,
"auto_patch_enabled": false,
"failure_count": 0,
"summary": {
"decision": "curator-review",
"week_id": "2026-W27",
"daily_report_count": 5,
"opportunity_count": 25,
"unique_opportunity_count": 5,
"ready_for_approval_review_count": 1,
"proposal_review_count": 4,
"observe_more_evidence_count": 0,
"report_only_count": 0,
"top_score": 88,
"skill_count": 11,
"actionable_portfolio_issue_count": 0,
"release_lock_ready": false,
"evidence_consistency_ok": true,
"public_world_class_ready": false,
"world_class_pending_count": 4,
"writes_source_files": false,
"auto_patch_enabled": false,
"failure_count": 0
},
"curator_contract": {
"schema_version": "1.0",
"contract": "weekly-skillops-curator-report",
"cadence": "weekly",
"source_of_truth": [
"reports/skillops/daily/*.json",
"reports/skill_atlas.json",
"reports/benchmark_reproducibility.json",
"reports/evidence_consistency.json",
"reports/world_class_evidence_ledger.json"
],
"raw_content_stored": false,
"redacted_or_generated_evidence_only": true,
"proposal_only": true,
"writes_source_files": false,
"auto_patch_enabled": false,
"approval_required_for_writes": true,
"counts_as_world_class_evidence": false
},
"report_contract": {
"schema_version": "1.0",
"contract": "weekly-skillops-curator-report",
"top_level_mirrors_summary": true,
"summary_fields": [
"decision",
"week_id",
"daily_report_count",
"opportunity_count",
"unique_opportunity_count",
"ready_for_approval_review_count",
"proposal_review_count",
"observe_more_evidence_count",
"report_only_count",
"top_score",
"skill_count",
"actionable_portfolio_issue_count",
"release_lock_ready",
"evidence_consistency_ok",
"public_world_class_ready",
"world_class_pending_count",
"writes_source_files",
"auto_patch_enabled",
"failure_count"
]
},
"daily_reports": [
"reports/skillops/daily/2026-06-16.json",
"reports/skillops/daily/2026-06-17.json",
"reports/skillops/daily/2026-06-20.json",
"reports/skillops/daily/2026-06-21.json",
"reports/skillops/daily/2026-07-02.json"
],
"opportunity_summary": {
"action_type_counts": {
"add_eval": 1,
"agents_update": 1,
"patch_existing_skill": 3
},
"decision_counts": {
"proposal_review": 4,
"ready_for_approval_review": 1
},
"risk_level_counts": {
"low": 3,
"medium": 2
}
},
"curator_queue": [
{
"opportunity_id": "skillops-4ad91c18dd",
"proposal_id": "adapt-fbfe921ba5",
"pattern_id": "report_ui",
"title": "Improve report layout, visual hierarchy, and chart readability",
"opportunity_type": "artifact-quality",
"action_type": "patch_existing_skill",
"decision": "ready_for_approval_review",
"priority": "medium",
"score": 88,
"score_reasons": [
"support_count=5",
"confidence=0.95",
"risk=medium",
"target_files_present",
"verification_present",
"approval_required"
],
"policy_reason": "Repeated report layout feedback maps to existing renderer and design doctrine changes.",
"risk_level": "medium",
"requires_approval": true,
"write_allowed_without_approval": false,
"evidence_count": 5,
"target_files": [
"scripts/render_skill_overview.py",
"references/artifact-design-doctrine.md",
"tests/verify_skill_overview.py"
],
"verification_commands": [
"python3 tests/verify_skill_overview.py",
"python3 tests/verify_skill_report_charts.py"
],
"daily_report_date": "2026-06-16"
},
{
"opportunity_id": "skillops-531e13c1c6",
"proposal_id": "adapt-59d219a1fb",
"pattern_id": "approval_safety",
"title": "Keep adaptive iteration approval-gated",
"opportunity_type": "governance",
"action_type": "agents_update",
"decision": "proposal_review",
"priority": "medium",
"score": 82,
"score_reasons": [
"support_count=2",
"confidence=0.79",
"risk=low",
"target_files_present",
"verification_present",
"approval_required"
],
"policy_reason": "Repeated privacy and approval signals should tighten durable operating guidance.",
"risk_level": "low",
"requires_approval": true,
"write_allowed_without_approval": false,
"evidence_count": 2,
"target_files": [
"references/user-memory-policy.md",
"references/autonomous-adaptation.md",
"schemas/adaptation-proposal.schema.json"
],
"verification_commands": [
"python3 tests/verify_adaptation_safety.py"
],
"daily_report_date": "2026-06-16"
},
{
"opportunity_id": "skillops-709ef884f3",
"proposal_id": "adapt-18c7517f3d",
"pattern_id": "language_default",
"title": "Keep reports Chinese-first with optional English",
"opportunity_type": "report-experience",
"action_type": "patch_existing_skill",
"decision": "proposal_review",
"priority": "medium",
"score": 82,
"score_reasons": [
"support_count=2",
"confidence=0.79",
"risk=low",
"target_files_present",
"verification_present",
"approval_required"
],
"policy_reason": "Repeated language preferences can improve existing report templates after approval.",
"risk_level": "low",
"requires_approval": true,
"write_allowed_without_approval": false,
"evidence_count": 2,
"target_files": [
"scripts/render_skill_overview.py",
"references/artifact-design-doctrine.md"
],
"verification_commands": [
"python3 tests/verify_skill_overview.py"
],
"daily_report_date": "2026-06-16"
},
{
"opportunity_id": "skillops-f9e43237aa",
"proposal_id": "adapt-457baca160",
"pattern_id": "delivery_format",
"title": "Make generated artifact paths explicit in CLI output",
"opportunity_type": "artifact-discoverability",
"action_type": "patch_existing_skill",
"decision": "proposal_review",
"priority": "medium",
"score": 82,
"score_reasons": [
"support_count=2",
"confidence=0.79",
"risk=low",
"target_files_present",
"verification_present",
"approval_required"
],
"policy_reason": "Repeated delivery-path requests can improve CLI and README artifact discoverability.",
"risk_level": "low",
"requires_approval": true,
"write_allowed_without_approval": false,
"evidence_count": 2,
"target_files": [
"scripts/yao.py",
"README.md"
],
"verification_commands": [
"python3 tests/verify_yao_cli.py"
],
"daily_report_date": "2026-06-16"
},
{
"opportunity_id": "skillops-0a3a2de7c3",
"proposal_id": "adapt-abfee25d3a",
"pattern_id": "evidence_testing",
"title": "Attach tests and evidence refresh to each upgrade",
"opportunity_type": "quality-gate",
"action_type": "add_eval",
"decision": "proposal_review",
"priority": "medium",
"score": 74,
"score_reasons": [
"support_count=2",
"confidence=0.79",
"risk=medium",
"target_files_present",
"verification_present",
"approval_required"
],
"policy_reason": "Repeated verification and evidence requests should become focused checks.",
"risk_level": "medium",
"requires_approval": true,
"write_allowed_without_approval": false,
"evidence_count": 2,
"target_files": [
"tests/verify_adaptation_safety.py",
"scripts/render_skill_os2_coverage.py",
"reports/skill_os2_coverage.json"
],
"verification_commands": [
"python3 tests/verify_adaptation_safety.py",
"python3 tests/verify_skill_os2_coverage.py"
],
"daily_report_date": "2026-06-16"
}
],
"portfolio": {
"skill_count": 11,
"actionable_issue_count": 0,
"route_collision_count": 5,
"actionable_route_collision_count": 0,
"owner_gap_count": 8,
"actionable_owner_gap_count": 0,
"stale_count": 9,
"actionable_stale_count": 0,
"drift_signal_count": 0,
"actionable_drift_signal_count": 0,
"no_route_opportunity_count": 0
},
"release_state": {
"release_lock_ready": false,
"evidence_consistency_ok": true,
"public_world_class_ready": false,
"world_class_pending_count": 4
},
"actions": [
{
"key": "review-ready-opportunities",
"priority": "high",
"action": "Review the top ready-for-approval SkillOps opportunities before preparing any approval ledger entry."
},
{
"key": "close-world-class-evidence",
"priority": "high",
"action": "Collect accepted external or human evidence for pending world-class ledger entries before public claims."
}
],
"failures": [],
"source_reports": {
"daily_dir": "reports/skillops/daily",
"skill_atlas": "reports/skill_atlas.json",
"benchmark_reproducibility": "reports/benchmark_reproducibility.json",
"evidence_consistency": "reports/evidence_consistency.json",
"world_class_ledger": "reports/world_class_evidence_ledger.json"
},
"artifacts": {
"json": "reports/skillops/weekly/2026-W27.json",
"markdown": "reports/skillops/weekly/2026-W27.md"
}
}
-110
View File
@@ -1,110 +0,0 @@
# Weekly SkillOps Curator Report
Generated at: `2026-07-02T06:33:07Z`
Week: `2026-W27`
## Summary
- decision: `curator-review`
- daily_report_count: `5`
- unique_opportunity_count: `5`
- ready_for_approval_review_count: `1`
- proposal_review_count: `4`
- top_score: `88`
- skill_count: `11`
- actionable_portfolio_issue_count: `0`
- release_lock_ready: `False`
- evidence_consistency_ok: `True`
- public_world_class_ready: `False`
- world_class_pending_count: `4`
This report is a weekly curator cockpit for generated SkillOps evidence. It does not scan private logs, write source files, apply patches, or count as world-class evidence.
## Curator Boundary
- raw_content_stored: `false`
- redacted_or_generated_evidence_only: `true`
- proposal_only: `true`
- writes_source_files: `false`
- auto_patch_enabled: `false`
- approval_required_for_writes: `true`
- counts_as_world_class_evidence: `false`
## Actions
- `high` Review the top ready-for-approval SkillOps opportunities before preparing any approval ledger entry.
- `high` Collect accepted external or human evidence for pending world-class ledger entries before public claims.
## Curator Queue
### Improve report layout, visual hierarchy, and chart readability
- ID: `skillops-4ad91c18dd`
- Action: `patch_existing_skill`
- Decision: `ready_for_approval_review`
- Score: `88`
- Risk: `medium`
- Source day: `2026-06-16`
- Policy: Repeated report layout feedback maps to existing renderer and design doctrine changes.
### Keep adaptive iteration approval-gated
- ID: `skillops-531e13c1c6`
- Action: `agents_update`
- Decision: `proposal_review`
- Score: `82`
- Risk: `low`
- Source day: `2026-06-16`
- Policy: Repeated privacy and approval signals should tighten durable operating guidance.
### Keep reports Chinese-first with optional English
- ID: `skillops-709ef884f3`
- Action: `patch_existing_skill`
- Decision: `proposal_review`
- Score: `82`
- Risk: `low`
- Source day: `2026-06-16`
- Policy: Repeated language preferences can improve existing report templates after approval.
### Make generated artifact paths explicit in CLI output
- ID: `skillops-f9e43237aa`
- Action: `patch_existing_skill`
- Decision: `proposal_review`
- Score: `82`
- Risk: `low`
- Source day: `2026-06-16`
- Policy: Repeated delivery-path requests can improve CLI and README artifact discoverability.
### Attach tests and evidence refresh to each upgrade
- ID: `skillops-0a3a2de7c3`
- Action: `add_eval`
- Decision: `proposal_review`
- Score: `74`
- Risk: `medium`
- Source day: `2026-06-16`
- Policy: Repeated verification and evidence requests should become focused checks.
## Portfolio Signals
- skill_count: `11`
- actionable_issue_count: `0`
- route_collision_count: `5`
- actionable_route_collision_count: `0`
- owner_gap_count: `8`
- actionable_owner_gap_count: `0`
- stale_count: `9`
- actionable_stale_count: `0`
- drift_signal_count: `0`
- actionable_drift_signal_count: `0`
- no_route_opportunity_count: `0`
## Evidence
- daily_dir: `reports/skillops/daily`
- skill_atlas: `reports/skill_atlas.json`
- benchmark_reproducibility: `reports/benchmark_reproducibility.json`
- evidence_consistency: `reports/evidence_consistency.json`
- world_class_ledger: `reports/world_class_evidence_ledger.json`
+2 -2
View File
@@ -1,6 +1,6 @@
{
"skill_name": "yao-meta-skill",
"description": "Create/improve/evaluate agent skills from workflows, prompts, SOPs, scripts. Use for migration/release/package, routing, evals/tests, install checks, 优化已有 skill, 补 trigger 评测. Exclude no-skill summary/translation/docs.",
"description": "Create, refactor, evaluate, and package agent skills from workflows, prompts, transcripts, docs, or notes. Use for skill creation, reusable workflow packaging, skill improvement, evals, and team-ready distribution.",
"systems_doctrine": "Structure drives behavior: improve the boundary, feedback loops, drift watch, and leverage points before adding weight.",
"stability": {
"score": 100,
@@ -56,7 +56,7 @@
"evidence": "reports/reference-synthesis.md",
"current_patterns": [
"Borrow progressive disclosure: keep the entrypoint lean and move depth into references or scripts.",
"Borrow a small hypothesis-test-learn loop so the first revision is evidence-backed.",
"Borrow a review checkpoint wherever trust matters more than raw speed.",
"Borrow the discipline of defining what the skill should not own before growing the package.",
"Borrow the way it turns a messy workflow into a repeatable operating path.",
"Borrow the clear execution entrypoints and command structure."

Some files were not shown because too many files have changed in this diff Show More