@furongjun1999/dsh-memory 0.4.5 → 0.4.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +127 -1
- package/docs//345/267/245/344/275/234/347/272/252/345/276/213_/350/256/244/347/237/245/345/233/276/346/235/241/347/233/256_v1.1.json +27 -2
- package/lib/index.js +43 -12
- package/lib/lib/mdcg_client.d.ts +23 -3
- package/lib/lib/mdcg_client.js +26 -15
- package/lib/lib/token_store.d.ts +36 -0
- package/lib/lib/token_store.js +135 -0
- package/md_cg/audit.py +58 -1
- package/md_cg/bench_axis_domain.py +250 -0
- package/md_cg/bench_lme_zh.py +396 -0
- package/md_cg/bench_locomo.py +121 -0
- package/md_cg/bench_locomo_zh.py +436 -0
- package/md_cg/bench_locomo_zh_public.py +145 -0
- package/md_cg/bench_longmem.py +112 -0
- package/md_cg/bench_zh_mad.py +583 -0
- package/md_cg/eval_common.py +547 -0
- package/md_cg/mcp_server.py +2586 -2445
- package/md_cg/mdcg.py +36 -2
- package/md_cg/mdcos.py +2542 -2505
- package/md_cg/protocol/md_cg_gate.proto +33 -0
- package/md_cg/security.py +250 -235
- package/md_cg/self_state.py +43 -6
- package/md_cg/test_p43_pooling.py +15 -5
- package/md_cg/test_p45_session_identity.py +220 -0
- package/md_cg/test_p46_unit_scope.py +272 -0
- package/md_cg/tokens.py +36 -0
- package/md_cg/whitebox_kb/aeis_core/core.py +10 -2
- package/md_cg/whitebox_kb/data/verify_savings.jsonl +6720 -0
- package/md_cg/whitebox_kb/wisdom/audit_log/chain_heat.json +19 -10
- package/md_cg/whitebox_kb/wisdom/causal_discover.py +3 -1
- package/md_cg/whitebox_kb/wisdom/knowledge_points.py +4 -1
- package/md_cg/whitebox_kb/wisdom/migrate_wisdom.py +3 -2
- package/md_cg/whitebox_kb/wisdom/wisdom-book-cloud.db-shm +0 -0
- package/md_cg/whitebox_kb/wisdom/wisdom-book-cloud.db-wal +0 -0
- package/package.json +2 -2
- package/skills/README.md +23 -10
- package/skills/plugin.json +10 -7
- package/skills/skills/designer-perspective/SKILL.md +2 -1
- package/skills/skills/designer-perspective/scripts/designer.py +4 -1
- package/skills/skills/lingshu-browser/SKILL.md +60 -0
- package/skills/skills/lingshu-browser/units/browser-02898b15/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-03b04f98/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-0754386d/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-093c03ab/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-09e60b35/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-0ab4f2db/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-0c7f88d6/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-0f598430/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-0fd64fa5/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-17906c62/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-18f823e2/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-1bafe81c/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-1f9ab1f0/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-1fdb5852/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-21b0359c/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-22e8de36/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-24163519/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-2471a991/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-25afee4d/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-283a91bd/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-2895ff52/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-2cc1da58/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-3189fe6f/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-31f2b08f/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-37b8339e/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-396ec3a6/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-3df2f904/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-43154cec/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-434b74b8/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-440d4398/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-44d7f183/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-4d6c0788/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-50fecd89/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-555c0626/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-57312d24/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-59a0ada4/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-5a455aeb/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-5ae7623a/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-5dac60b6/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-5e5f1396/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-5ebb01dd/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-5f5453f9/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-5f90f58c/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-609362ee/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-60aefeeb/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-6636d49c/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-6cfcb6db/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-6e1c1158/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-7008e942/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-716cd26c/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-720ce1a1/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-77a97b43/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-7bb4871d/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-7be57bbe/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-7da433f3/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-7e96fe1d/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-7f9cefec/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-80224e71/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-81345ecd/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-822cfa44/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-853690c0/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-85553126/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-87b0ce80/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-900c4484/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-910405c4/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-95fd3c86/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-97a14ca3/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-9de10895/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-9e4914a7/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-a280ec64/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-a2d9b0b0/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-a372edeb/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-a4c793a4/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-a681d0c2/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-a7a2b0c1/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-a990e68e/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-aaac4eec/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-ae6586bb/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-afa4091f/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-b4c8cf65/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-b501767c/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-bcd4288d/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-bfad66a5/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-c45cbfe9/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-c4dd6078/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-c879eb0b/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-c92ac01b/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-cb179242/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-cc7d3d6d/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-cf3c47f0/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-cf9f812e/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-d462581c/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-d5fa0b7f/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-d72e225b/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-df1a919e/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-e84565c1/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-e947a564/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-ea9b2b8e/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-f5ffc6d9/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-f75a4418/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-f8f2966e/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-fa65fa2d/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-faac8812/SKILL.md +45 -0
- package/skills/skills/lingshu-browser/units/browser-ff94a671/SKILL.md +45 -0
- package/skills/skills/lingshu-compiler/SKILL.md +56 -0
- package/skills/skills/lingshu-graph/SKILL.md +63 -0
- package/skills/skills/lingshu-graph/units/graph-04cd431b/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-06e2b1f2/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-0de12477/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-0e564e68/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-10d58a7b/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-12cd830a/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-185f2cd2/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-19a6a301/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-1b266557/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-1b707621/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-1d73b597/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-2041fa98/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-2461bc41/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-2465dff8/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-2508389f/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-276d554d/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-299f4a32/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-2d455cd8/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-2fddf701/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-33385442/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-34a1dba7/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-3721be1c/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-3755dbc9/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-37a45d4b/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-3a4a984c/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-3aa4c941/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-3b69a528/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-3bc2eb69/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-3d255ed4/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-3d34961d/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-3e18a380/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-3f920bf3/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-40b7bf61/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-42187d5d/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-4361c60e/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-44e56113/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-4b363727/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-52e6e216/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-53fbfef5/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-54ac2988/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-580dadcd/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-5ca34baa/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-5cb7fbdf/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-5f894c05/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-656e7bd4/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-6dc48231/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-7186924a/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-72ce5342/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-7376a24e/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-7412a7cb/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-7becedf0/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-7c38fbf3/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-7dc36de7/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-7fe49de7/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-80d82194/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-85bf101e/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-8650548b/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-86583b09/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-8727827c/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-873fb505/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-89b11de0/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-8d7b569b/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-8e920d5d/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-8eb38e3d/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-94582f69/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-947355f7/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-9507aff7/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-95b86a8b/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-96b85e1f/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-97b22f09/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-9833cfda/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-9aa8a3f4/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-9f6665c0/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-a125d282/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-a49ef4f0/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-a5cd04ae/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-add9a63b/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-b00e3dc7/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-b33a7662/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-b76d15ee/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-b77fa05a/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-b912fc3b/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-baf61b7c/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-c1d5687b/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-c407bbed/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-c4676460/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-c4a59d80/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-c5815621/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-ccad55f1/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-d0677ce1/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-d1289b39/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-d15f39b1/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-d40691ca/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-d43b387a/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-d4dd02f4/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-d724ea18/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-d74d36fd/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-d9d3934c/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-ddf563ff/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-de00894f/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-df1ebb63/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-e2905c20/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-e4f8cefd/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-ea3150e7/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-eb4ac7dd/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-ee9f6dfa/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-f055b2ea/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-f1891287/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-f1bb5aa1/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-f56fa220/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-f729034f/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-f748a63f/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-f8c4a59e/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-fca3d129/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-fd02d934/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-fd51ece9/SKILL.md +45 -0
- package/skills/skills/lingshu-graph/units/graph-fd6a81ab/SKILL.md +45 -0
- package/skills/skills/lingshu-net/SKILL.md +48 -0
- package/skills/skills/lingshu-net/units/net-02090d29/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-05937712/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-059d072f/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-080f6012/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-08a2fc88/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-0935edf1/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-0e7f91e4/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-0f2850e0/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-107ab486/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-111e79b0/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-126876c1/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-13eeb575/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-14102d54/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-14e9ad0d/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-184175d3/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-1da1c695/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-240a14ec/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-2784f98b/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-292ef917/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-3434e92f/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-35019e6b/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-3bbc6afb/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-3bdf9d9d/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-3dcb84d3/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-431cccf9/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-435a9f7f/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-4508101f/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-4585c9e7/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-479612a0/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-47a19838/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-4e36e1e3/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-509b8001/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-51930c5e/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-56dbd63f/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-57387462/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-5c115606/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-5d27f392/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-5f69c938/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-5fa6c13b/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-61580202/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-61926703/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-61f64fbc/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-6200f3b2/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-63c3eda3/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-66e6119b/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-68643014/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-686632aa/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-6967ff14/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-6996f499/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-6c3b02c2/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-6eb37f63/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-6f96c190/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-6fb27488/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-703559d0/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-706d2692/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-70a20e04/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-7376158c/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-74d647cb/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-74e8a576/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-7801c2c0/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-78cae54d/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-78ec0324/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-7998097c/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-7d81ae06/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-7eabbbc8/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-7ed4f2c5/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-80b56cd6/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-83447546/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-8361fe5b/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-85e3996c/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-8897d5cc/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-88ad93a6/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-8e6f359e/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-8edc4cdb/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-8f6169e9/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-91e00638/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-96c61a3c/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-99076a29/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-998f3641/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-a1d7228a/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-a74da501/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-ac57deb7/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-b22d2f2b/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-b2b29d8d/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-b2ddce5d/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-b4151e9a/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-b873d6f7/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-bd3d2d55/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-c2a3f019/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-c685b788/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-c6c1fd79/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-c74a1b5d/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-cdac702d/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-d12dff5c/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-d3747882/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-d5fefa59/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-d67ec725/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-d80c1c4c/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-d9cb43b0/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-da559517/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-db4f414e/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-dc09d67c/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-e2d185de/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-e2fc73f8/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-e33ef0c2/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-e346863c/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-e6b3389a/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-e9758fc0/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-e9a9747a/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-ea14aab8/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-eba92ac1/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-f29d91d2/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-f314dd0d/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-f332b629/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-f7df127c/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-fb9d8f5d/SKILL.md +45 -0
- package/skills/skills/lingshu-net/units/net-fdec2c86/SKILL.md +45 -0
- package/skills/skills/lingshu-os/SKILL.md +64 -0
- package/skills/skills/lingshu-os/units/os-0205cf9b/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-027dc9be/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-03c0d7d6/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-040b5505/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-06fa98ed/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-0854291c/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-0c7f14cb/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-0d855af2/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-0e87e997/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-0f8ed882/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-111ce1de/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-1234eb00/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-128f3820/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-15796db5/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-1898928a/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-192b8ca9/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-1d3bcf28/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-1f224514/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-26a4f86a/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-29c96147/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-2ea9a5ff/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-300ef22c/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-310dda5b/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-313ef4ed/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-329a2147/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-34ad4b62/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-350bc623/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-35ee1a30/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-3cd28220/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-3d84e0c9/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-3db42aac/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-3e0aff42/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-3e9405d2/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-41d14544/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-462f3ed4/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-485833fa/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-4a1cf781/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-4bf77933/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-4c14cec2/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-4f05d577/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-4f50ad0b/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-509a4596/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-512b1b6c/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-5192621b/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-55672763/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-5582bce6/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-5a096a1f/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-5ca15108/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-601663e1/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-607f1963/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-6158581b/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-62f9278b/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-63797b86/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-6a1fe224/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-6b0a68bf/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-6e5cee67/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-6fb1ff58/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-71389592/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-72e879a3/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-7598748a/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-80cc3283/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-819f3093/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-83670c2b/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-878c18b3/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-89ed7af1/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-8cb7279d/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-92276145/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-955c4d66/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-97aacf40/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-9b6ed02c/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-9c86a7a2/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-a13ce4aa/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-a568affe/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-abd48f17/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-b0416edc/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-b6509cac/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-b718657b/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-b776ade1/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-ba24fa08/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-bd1fc177/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-bda92711/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-c0fa71bd/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-c3d5cd44/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-c6b6a763/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-c7661eb1/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-c76b5a43/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-c7d35a30/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-c980a25d/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-c9f8df6e/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-cc49ef2f/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-cd9e686a/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-cfa66a1b/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-d237e500/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-d39ef086/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-d4f9e813/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-d97915c0/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-da0aadde/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-da482caf/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-dd4ff45e/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-de0556c5/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-e0ad3364/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-e7612c68/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-ea444e45/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-ea6e7e0b/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-ebc34d83/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-ecbebbe3/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-ecfceae7/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-ed8de3a3/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-f69c0b08/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-f6ae6205/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-f9bf8dd4/SKILL.md +45 -0
- package/skills/skills/lingshu-os/units/os-fcdd828d/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/SKILL.md +71 -0
- package/skills/skills/lingshu-pylang/units/pylang-01b23f80/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-074fd698/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-0b490bb2/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-0ca7f08b/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-10ce3e91/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-15f76c64/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-1703046f/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-1aa3e939/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-1bed54cf/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-1dd35612/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-24273d7b/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-2853f59f/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-2a6bc16e/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-2ae78997/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-2bc88f4c/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-31f5b8db/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-36d178bc/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-38600583/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-38e8f9ff/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-395085ca/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-399b317e/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-39c72c78/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-3a659480/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-482be62b/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-486a1e94/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-49026041/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-4963b28a/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-4af9140e/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-4ca283f2/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-4ddf31f3/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-50614726/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-5102c069/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-521b1bf8/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-5880b7a1/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-61a9102d/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-621123dd/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-642cd625/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-65ca79b7/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-672df225/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-67d3368e/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-6be54340/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-70b2006f/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-70b215f1/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-730c3fe4/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-733c1286/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-79845f4d/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-7c4cc6f8/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-7c7193ad/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-7d86ab5d/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-7df8ca78/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-8182681d/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-81ad40ee/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-8283d7c0/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-82b73f3d/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-8404bbde/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-8584040d/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-85d8617b/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-886935a3/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-88ab2f96/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-8b6f071e/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-8d6ec58a/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-8fe98252/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-9018c39a/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-91277748/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-943b9dcb/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-961e9e43/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-962954d9/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-9dbd8e2b/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-a02eac31/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-a4d3d7b1/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-a7c3d0e2/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-a88db70d/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-ab7dddc2/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-ac2a4b38/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-afaf67c0/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-b00660e6/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-b4d7616d/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-b67b1878/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-b8040e1c/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-b880c6c6/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-b8d45f76/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-ba956e52/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-bb18b1f9/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-bb46f3f2/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-be55a094/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-beb47b63/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-c017681a/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-c1317cd9/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-c36fabf7/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-c42465ec/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-c5c76a12/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-c910ad31/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-ca9332cf/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-cce90fa0/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-cd4234a5/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-cf0fca1c/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-d2001e1f/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-d616eb28/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-d8962e66/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-db6214cd/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-dcde3040/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-dfad3dba/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-dfd5aac2/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-e1aa3818/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-e476915b/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-e88e31fd/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-ecd569d2/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-ecf27e0c/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-f124f0e6/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-f127a8d1/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-f2d6ec27/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-f2f40090/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-f4aa9e65/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-f4f820d4/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-f5b34833/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-f6ebb66e/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-f78bdcd7/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-f92bc49b/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-fd7595f0/SKILL.md +45 -0
- package/skills/skills/lingshu-pylang/units/pylang-fda87aa1/SKILL.md +45 -0
- package/src/index.ts +41 -12
- package/src/lib/mdcg_client.ts +48 -15
- package/src/lib/token_store.ts +183 -0
- package/md_cg/__pycache__/__init__.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/_dbg_p30.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/_diag_p19.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/_tmp_dbg.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/audit.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/backfill.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/bench_membench.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/bench_p0.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/census.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/chain.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/codeindex.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/consistency.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/consolidate.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/corpus.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/crosscheck.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/crypto.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/datapath.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/docindex.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/evidence.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/evolution.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/export.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/forgetting.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/fsutil.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/identity.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/insight.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/links.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/mcp_server.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/md_whitebox.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/mdcg.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/mdcos.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/metacognition.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/migrate.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/migrate_aeis.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/migrate_roleplay.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/migrate_wisdom_graph.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/nodefile.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/pooling.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/predict.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/protect.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/provenance.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/refindex.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/refine.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/routing.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/scrub.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/security.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/self_state.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/signer.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/sources.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/stg.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/subgraph.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/sustain.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_lock.cpython-310-pytest-9.1.1.pyc +0 -0
- package/md_cg/__pycache__/test_lock.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p0.cpython-310-pytest-9.1.1.pyc +0 -0
- package/md_cg/__pycache__/test_p0.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p1.cpython-310-pytest-9.1.1.pyc +0 -0
- package/md_cg/__pycache__/test_p1.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p10_identity.cpython-310-pytest-9.1.1.pyc +0 -0
- package/md_cg/__pycache__/test_p10_identity.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p11_consistency.cpython-310-pytest-9.1.1.pyc +0 -0
- package/md_cg/__pycache__/test_p11_consistency.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p12_metacognition.cpython-310-pytest-9.1.1.pyc +0 -0
- package/md_cg/__pycache__/test_p12_metacognition.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p13_encryption.cpython-310-pytest-9.1.1.pyc +0 -0
- package/md_cg/__pycache__/test_p13_encryption.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p14_sustain.cpython-310-pytest-9.1.1.pyc +0 -0
- package/md_cg/__pycache__/test_p14_sustain.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p15_scrub.cpython-310-pytest-9.1.1.pyc +0 -0
- package/md_cg/__pycache__/test_p15_scrub.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p16_self_state.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p17_predict.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p18_whitebox.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p19_migrate_roleplay.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p2.cpython-310-pytest-9.1.1.pyc +0 -0
- package/md_cg/__pycache__/test_p2.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p20_evolution.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p21_tokens.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p22_theory.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p23_links.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p24_evidence.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p25_weights.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p26_refindex.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p27_docindex.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p28_refcheck.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p29_session_ingest_export.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p2_mcp.cpython-310-pytest-9.1.1.pyc +0 -0
- package/md_cg/__pycache__/test_p2_mcp.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p3.cpython-310-pytest-9.1.1.pyc +0 -0
- package/md_cg/__pycache__/test_p3.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p30_maintain.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p31_insight.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p32_backfill.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p33_ccg_wiring.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p34_crosscheck.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p35_conditioned_claim.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p36_kp_align.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p37_condition_space.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p38_contextualize.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p39_vision_evidence.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p40_refine_worklist.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p41_evolve_patrol.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p42_provenance.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p43_pooling.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p44_md_whitebox.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p4_fuzzy.cpython-310-pytest-9.1.1.pyc +0 -0
- package/md_cg/__pycache__/test_p4_fuzzy.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p5_semantic.cpython-310-pytest-9.1.1.pyc +0 -0
- package/md_cg/__pycache__/test_p5_semantic.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p6_consolidate.cpython-310-pytest-9.1.1.pyc +0 -0
- package/md_cg/__pycache__/test_p6_consolidate.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p7_goals_recent.cpython-310-pytest-9.1.1.pyc +0 -0
- package/md_cg/__pycache__/test_p7_goals_recent.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p8_subgraph_chain.cpython-310-pytest-9.1.1.pyc +0 -0
- package/md_cg/__pycache__/test_p8_subgraph_chain.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/test_p9_forget_protect.cpython-310-pytest-9.1.1.pyc +0 -0
- package/md_cg/__pycache__/test_p9_forget_protect.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/theory.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/tokens.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/vision_evidence.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/weights.cpython-310.pyc +0 -0
- package/md_cg/__pycache__/whitebox.cpython-310.pyc +0 -0
- package/md_cg/whitebox_kb/__pycache__/__init__.cpython-310.pyc +0 -0
- package/md_cg/whitebox_kb/__pycache__/engine.cpython-310.pyc +0 -0
- package/md_cg/whitebox_kb/aeis_core/__pycache__/__init__.cpython-310.pyc +0 -0
- package/md_cg/whitebox_kb/aeis_core/__pycache__/core.cpython-310.pyc +0 -0
- package/md_cg/whitebox_kb/aeis_core/__pycache__/semantic.cpython-310.pyc +0 -0
- package/md_cg/whitebox_kb/aeis_core/__pycache__/time_core.cpython-310.pyc +0 -0
- package/md_cg/whitebox_kb/wisdom/__pycache__/browser_units.cpython-310.pyc +0 -0
- package/md_cg/whitebox_kb/wisdom/__pycache__/chat_engine.cpython-310.pyc +0 -0
- package/md_cg/whitebox_kb/wisdom/__pycache__/code_compose.cpython-310.pyc +0 -0
- package/md_cg/whitebox_kb/wisdom/__pycache__/compiler_code_units.cpython-310.pyc +0 -0
- package/md_cg/whitebox_kb/wisdom/__pycache__/condition_frame.cpython-310.pyc +0 -0
- package/md_cg/whitebox_kb/wisdom/__pycache__/condition_kb.cpython-310.pyc +0 -0
- package/md_cg/whitebox_kb/wisdom/__pycache__/danmaku_audit.cpython-310.pyc +0 -0
- package/md_cg/whitebox_kb/wisdom/__pycache__/graph_db_units.cpython-310.pyc +0 -0
- package/md_cg/whitebox_kb/wisdom/__pycache__/net_units.cpython-310.pyc +0 -0
- package/md_cg/whitebox_kb/wisdom/__pycache__/neural_retrieve.cpython-310.pyc +0 -0
- package/md_cg/whitebox_kb/wisdom/__pycache__/os_units.cpython-310.pyc +0 -0
- package/md_cg/whitebox_kb/wisdom/__pycache__/python_code_units.cpython-310.pyc +0 -0
- package/md_cg/whitebox_kb/wisdom/__pycache__/route_memory.cpython-310.pyc +0 -0
- package/md_cg/whitebox_kb/wisdom/__pycache__/semantic_translate.cpython-310.pyc +0 -0
- package/md_cg/whitebox_kb/wisdom/__pycache__/verifier.cpython-310.pyc +0 -0
- package/md_cg/whitebox_kb/wisdom/__pycache__/verify_answer.cpython-310.pyc +0 -0
- package/md_cg/whitebox_kb/wisdom/__pycache__/wisdom_book.cpython-310.pyc +0 -0
- package/md_cg/whitebox_kb/wisdom/__pycache__/wisdom_cloud.cpython-310.pyc +0 -0
- package/skills/skills/browser-02898b15/SKILL.md +0 -45
- package/skills/skills/browser-03b04f98/SKILL.md +0 -45
- package/skills/skills/browser-0754386d/SKILL.md +0 -45
- package/skills/skills/browser-093c03ab/SKILL.md +0 -45
- package/skills/skills/browser-09e60b35/SKILL.md +0 -45
- package/skills/skills/browser-0ab4f2db/SKILL.md +0 -45
- package/skills/skills/browser-0c7f88d6/SKILL.md +0 -45
- package/skills/skills/browser-0f598430/SKILL.md +0 -45
- package/skills/skills/browser-0fd64fa5/SKILL.md +0 -45
- package/skills/skills/browser-17906c62/SKILL.md +0 -45
- package/skills/skills/browser-18f823e2/SKILL.md +0 -45
- package/skills/skills/browser-1bafe81c/SKILL.md +0 -45
- package/skills/skills/browser-1f9ab1f0/SKILL.md +0 -45
- package/skills/skills/browser-1fdb5852/SKILL.md +0 -45
- package/skills/skills/browser-21b0359c/SKILL.md +0 -45
- package/skills/skills/browser-22e8de36/SKILL.md +0 -45
- package/skills/skills/browser-24163519/SKILL.md +0 -45
- package/skills/skills/browser-2471a991/SKILL.md +0 -45
- package/skills/skills/browser-25afee4d/SKILL.md +0 -45
- package/skills/skills/browser-283a91bd/SKILL.md +0 -45
- package/skills/skills/browser-2895ff52/SKILL.md +0 -45
- package/skills/skills/browser-2cc1da58/SKILL.md +0 -45
- package/skills/skills/browser-3189fe6f/SKILL.md +0 -45
- package/skills/skills/browser-31f2b08f/SKILL.md +0 -45
- package/skills/skills/browser-37b8339e/SKILL.md +0 -45
- package/skills/skills/browser-396ec3a6/SKILL.md +0 -45
- package/skills/skills/browser-3df2f904/SKILL.md +0 -45
- package/skills/skills/browser-43154cec/SKILL.md +0 -45
- package/skills/skills/browser-434b74b8/SKILL.md +0 -45
- package/skills/skills/browser-440d4398/SKILL.md +0 -45
- package/skills/skills/browser-44d7f183/SKILL.md +0 -45
- package/skills/skills/browser-4d6c0788/SKILL.md +0 -45
- package/skills/skills/browser-50fecd89/SKILL.md +0 -45
- package/skills/skills/browser-555c0626/SKILL.md +0 -45
- package/skills/skills/browser-57312d24/SKILL.md +0 -45
- package/skills/skills/browser-59a0ada4/SKILL.md +0 -45
- package/skills/skills/browser-5a455aeb/SKILL.md +0 -45
- package/skills/skills/browser-5ae7623a/SKILL.md +0 -45
- package/skills/skills/browser-5dac60b6/SKILL.md +0 -45
- package/skills/skills/browser-5e5f1396/SKILL.md +0 -45
- package/skills/skills/browser-5ebb01dd/SKILL.md +0 -45
- package/skills/skills/browser-5f5453f9/SKILL.md +0 -45
- package/skills/skills/browser-5f90f58c/SKILL.md +0 -45
- package/skills/skills/browser-609362ee/SKILL.md +0 -45
- package/skills/skills/browser-60aefeeb/SKILL.md +0 -45
- package/skills/skills/browser-6636d49c/SKILL.md +0 -45
- package/skills/skills/browser-6cfcb6db/SKILL.md +0 -45
- package/skills/skills/browser-6e1c1158/SKILL.md +0 -45
- package/skills/skills/browser-7008e942/SKILL.md +0 -45
- package/skills/skills/browser-716cd26c/SKILL.md +0 -45
- package/skills/skills/browser-720ce1a1/SKILL.md +0 -45
- package/skills/skills/browser-77a97b43/SKILL.md +0 -45
- package/skills/skills/browser-7bb4871d/SKILL.md +0 -45
- package/skills/skills/browser-7be57bbe/SKILL.md +0 -45
- package/skills/skills/browser-7da433f3/SKILL.md +0 -45
- package/skills/skills/browser-7e96fe1d/SKILL.md +0 -45
- package/skills/skills/browser-7f9cefec/SKILL.md +0 -45
- package/skills/skills/browser-80224e71/SKILL.md +0 -45
- package/skills/skills/browser-81345ecd/SKILL.md +0 -45
- package/skills/skills/browser-822cfa44/SKILL.md +0 -45
- package/skills/skills/browser-853690c0/SKILL.md +0 -45
- package/skills/skills/browser-85553126/SKILL.md +0 -45
- package/skills/skills/browser-87b0ce80/SKILL.md +0 -45
- package/skills/skills/browser-900c4484/SKILL.md +0 -45
- package/skills/skills/browser-910405c4/SKILL.md +0 -45
- package/skills/skills/browser-95fd3c86/SKILL.md +0 -45
- package/skills/skills/browser-97a14ca3/SKILL.md +0 -45
- package/skills/skills/browser-9de10895/SKILL.md +0 -45
- package/skills/skills/browser-9e4914a7/SKILL.md +0 -45
- package/skills/skills/browser-a280ec64/SKILL.md +0 -45
- package/skills/skills/browser-a2d9b0b0/SKILL.md +0 -45
- package/skills/skills/browser-a372edeb/SKILL.md +0 -45
- package/skills/skills/browser-a4c793a4/SKILL.md +0 -45
- package/skills/skills/browser-a681d0c2/SKILL.md +0 -45
- package/skills/skills/browser-a7a2b0c1/SKILL.md +0 -45
- package/skills/skills/browser-a990e68e/SKILL.md +0 -45
- package/skills/skills/browser-aaac4eec/SKILL.md +0 -45
- package/skills/skills/browser-ae6586bb/SKILL.md +0 -45
- package/skills/skills/browser-afa4091f/SKILL.md +0 -45
- package/skills/skills/browser-b4c8cf65/SKILL.md +0 -45
- package/skills/skills/browser-b501767c/SKILL.md +0 -45
- package/skills/skills/browser-bcd4288d/SKILL.md +0 -45
- package/skills/skills/browser-bfad66a5/SKILL.md +0 -45
- package/skills/skills/browser-c45cbfe9/SKILL.md +0 -45
- package/skills/skills/browser-c4dd6078/SKILL.md +0 -45
- package/skills/skills/browser-c879eb0b/SKILL.md +0 -45
- package/skills/skills/browser-c92ac01b/SKILL.md +0 -45
- package/skills/skills/browser-cb179242/SKILL.md +0 -45
- package/skills/skills/browser-cc7d3d6d/SKILL.md +0 -45
- package/skills/skills/browser-cf3c47f0/SKILL.md +0 -45
- package/skills/skills/browser-cf9f812e/SKILL.md +0 -45
- package/skills/skills/browser-d462581c/SKILL.md +0 -45
- package/skills/skills/browser-d5fa0b7f/SKILL.md +0 -45
- package/skills/skills/browser-d72e225b/SKILL.md +0 -45
- package/skills/skills/browser-df1a919e/SKILL.md +0 -45
- package/skills/skills/browser-e84565c1/SKILL.md +0 -45
- package/skills/skills/browser-e947a564/SKILL.md +0 -45
- package/skills/skills/browser-ea9b2b8e/SKILL.md +0 -45
- package/skills/skills/browser-f5ffc6d9/SKILL.md +0 -45
- package/skills/skills/browser-f75a4418/SKILL.md +0 -45
- package/skills/skills/browser-f8f2966e/SKILL.md +0 -45
- package/skills/skills/browser-fa65fa2d/SKILL.md +0 -45
- package/skills/skills/browser-faac8812/SKILL.md +0 -45
- package/skills/skills/browser-ff94a671/SKILL.md +0 -45
- package/skills/skills/designer-perspective/scripts/__pycache__/designer.cpython-310.pyc +0 -0
- package/skills/skills/graph-04cd431b/SKILL.md +0 -45
- package/skills/skills/graph-06e2b1f2/SKILL.md +0 -45
- package/skills/skills/graph-0de12477/SKILL.md +0 -45
- package/skills/skills/graph-0e564e68/SKILL.md +0 -45
- package/skills/skills/graph-10d58a7b/SKILL.md +0 -45
- package/skills/skills/graph-12cd830a/SKILL.md +0 -45
- package/skills/skills/graph-185f2cd2/SKILL.md +0 -45
- package/skills/skills/graph-19a6a301/SKILL.md +0 -45
- package/skills/skills/graph-1b266557/SKILL.md +0 -45
- package/skills/skills/graph-1b707621/SKILL.md +0 -45
- package/skills/skills/graph-1d73b597/SKILL.md +0 -45
- package/skills/skills/graph-2041fa98/SKILL.md +0 -45
- package/skills/skills/graph-2461bc41/SKILL.md +0 -45
- package/skills/skills/graph-2465dff8/SKILL.md +0 -45
- package/skills/skills/graph-2508389f/SKILL.md +0 -45
- package/skills/skills/graph-276d554d/SKILL.md +0 -45
- package/skills/skills/graph-299f4a32/SKILL.md +0 -45
- package/skills/skills/graph-2d455cd8/SKILL.md +0 -45
- package/skills/skills/graph-2fddf701/SKILL.md +0 -45
- package/skills/skills/graph-33385442/SKILL.md +0 -45
- package/skills/skills/graph-34a1dba7/SKILL.md +0 -45
- package/skills/skills/graph-3721be1c/SKILL.md +0 -45
- package/skills/skills/graph-3755dbc9/SKILL.md +0 -45
- package/skills/skills/graph-37a45d4b/SKILL.md +0 -45
- package/skills/skills/graph-3a4a984c/SKILL.md +0 -45
- package/skills/skills/graph-3aa4c941/SKILL.md +0 -45
- package/skills/skills/graph-3b69a528/SKILL.md +0 -45
- package/skills/skills/graph-3bc2eb69/SKILL.md +0 -45
- package/skills/skills/graph-3d255ed4/SKILL.md +0 -45
- package/skills/skills/graph-3d34961d/SKILL.md +0 -45
- package/skills/skills/graph-3e18a380/SKILL.md +0 -45
- package/skills/skills/graph-3f920bf3/SKILL.md +0 -45
- package/skills/skills/graph-40b7bf61/SKILL.md +0 -45
- package/skills/skills/graph-42187d5d/SKILL.md +0 -45
- package/skills/skills/graph-4361c60e/SKILL.md +0 -45
- package/skills/skills/graph-44e56113/SKILL.md +0 -45
- package/skills/skills/graph-4b363727/SKILL.md +0 -45
- package/skills/skills/graph-52e6e216/SKILL.md +0 -45
- package/skills/skills/graph-53fbfef5/SKILL.md +0 -45
- package/skills/skills/graph-54ac2988/SKILL.md +0 -45
- package/skills/skills/graph-580dadcd/SKILL.md +0 -45
- package/skills/skills/graph-5ca34baa/SKILL.md +0 -45
- package/skills/skills/graph-5cb7fbdf/SKILL.md +0 -45
- package/skills/skills/graph-5f894c05/SKILL.md +0 -45
- package/skills/skills/graph-656e7bd4/SKILL.md +0 -45
- package/skills/skills/graph-6dc48231/SKILL.md +0 -45
- package/skills/skills/graph-7186924a/SKILL.md +0 -45
- package/skills/skills/graph-72ce5342/SKILL.md +0 -45
- package/skills/skills/graph-7376a24e/SKILL.md +0 -45
- package/skills/skills/graph-7412a7cb/SKILL.md +0 -45
- package/skills/skills/graph-7becedf0/SKILL.md +0 -45
- package/skills/skills/graph-7c38fbf3/SKILL.md +0 -45
- package/skills/skills/graph-7dc36de7/SKILL.md +0 -45
- package/skills/skills/graph-7fe49de7/SKILL.md +0 -45
- package/skills/skills/graph-80d82194/SKILL.md +0 -45
- package/skills/skills/graph-85bf101e/SKILL.md +0 -45
- package/skills/skills/graph-8650548b/SKILL.md +0 -45
- package/skills/skills/graph-86583b09/SKILL.md +0 -45
- package/skills/skills/graph-8727827c/SKILL.md +0 -45
- package/skills/skills/graph-873fb505/SKILL.md +0 -45
- package/skills/skills/graph-89b11de0/SKILL.md +0 -45
- package/skills/skills/graph-8d7b569b/SKILL.md +0 -45
- package/skills/skills/graph-8e920d5d/SKILL.md +0 -45
- package/skills/skills/graph-8eb38e3d/SKILL.md +0 -45
- package/skills/skills/graph-94582f69/SKILL.md +0 -45
- package/skills/skills/graph-947355f7/SKILL.md +0 -45
- package/skills/skills/graph-9507aff7/SKILL.md +0 -45
- package/skills/skills/graph-95b86a8b/SKILL.md +0 -45
- package/skills/skills/graph-96b85e1f/SKILL.md +0 -45
- package/skills/skills/graph-97b22f09/SKILL.md +0 -45
- package/skills/skills/graph-9833cfda/SKILL.md +0 -45
- package/skills/skills/graph-9aa8a3f4/SKILL.md +0 -45
- package/skills/skills/graph-9f6665c0/SKILL.md +0 -45
- package/skills/skills/graph-a125d282/SKILL.md +0 -45
- package/skills/skills/graph-a49ef4f0/SKILL.md +0 -45
- package/skills/skills/graph-a5cd04ae/SKILL.md +0 -45
- package/skills/skills/graph-add9a63b/SKILL.md +0 -45
- package/skills/skills/graph-b00e3dc7/SKILL.md +0 -45
- package/skills/skills/graph-b33a7662/SKILL.md +0 -45
- package/skills/skills/graph-b76d15ee/SKILL.md +0 -45
- package/skills/skills/graph-b77fa05a/SKILL.md +0 -45
- package/skills/skills/graph-b912fc3b/SKILL.md +0 -45
- package/skills/skills/graph-baf61b7c/SKILL.md +0 -45
- package/skills/skills/graph-c1d5687b/SKILL.md +0 -45
- package/skills/skills/graph-c407bbed/SKILL.md +0 -45
- package/skills/skills/graph-c4676460/SKILL.md +0 -45
- package/skills/skills/graph-c4a59d80/SKILL.md +0 -45
- package/skills/skills/graph-c5815621/SKILL.md +0 -45
- package/skills/skills/graph-ccad55f1/SKILL.md +0 -45
- package/skills/skills/graph-d0677ce1/SKILL.md +0 -45
- package/skills/skills/graph-d1289b39/SKILL.md +0 -45
- package/skills/skills/graph-d15f39b1/SKILL.md +0 -45
- package/skills/skills/graph-d40691ca/SKILL.md +0 -45
- package/skills/skills/graph-d43b387a/SKILL.md +0 -45
- package/skills/skills/graph-d4dd02f4/SKILL.md +0 -45
- package/skills/skills/graph-d724ea18/SKILL.md +0 -45
- package/skills/skills/graph-d74d36fd/SKILL.md +0 -45
- package/skills/skills/graph-d9d3934c/SKILL.md +0 -45
- package/skills/skills/graph-ddf563ff/SKILL.md +0 -45
- package/skills/skills/graph-de00894f/SKILL.md +0 -45
- package/skills/skills/graph-df1ebb63/SKILL.md +0 -45
- package/skills/skills/graph-e2905c20/SKILL.md +0 -45
- package/skills/skills/graph-e4f8cefd/SKILL.md +0 -45
- package/skills/skills/graph-ea3150e7/SKILL.md +0 -45
- package/skills/skills/graph-eb4ac7dd/SKILL.md +0 -45
- package/skills/skills/graph-ee9f6dfa/SKILL.md +0 -45
- package/skills/skills/graph-f055b2ea/SKILL.md +0 -45
- package/skills/skills/graph-f1891287/SKILL.md +0 -45
- package/skills/skills/graph-f1bb5aa1/SKILL.md +0 -45
- package/skills/skills/graph-f56fa220/SKILL.md +0 -45
- package/skills/skills/graph-f729034f/SKILL.md +0 -45
- package/skills/skills/graph-f748a63f/SKILL.md +0 -45
- package/skills/skills/graph-f8c4a59e/SKILL.md +0 -45
- package/skills/skills/graph-fca3d129/SKILL.md +0 -45
- package/skills/skills/graph-fd02d934/SKILL.md +0 -45
- package/skills/skills/graph-fd51ece9/SKILL.md +0 -45
- package/skills/skills/graph-fd6a81ab/SKILL.md +0 -45
- package/skills/skills/net-02090d29/SKILL.md +0 -45
- package/skills/skills/net-05937712/SKILL.md +0 -45
- package/skills/skills/net-059d072f/SKILL.md +0 -45
- package/skills/skills/net-080f6012/SKILL.md +0 -45
- package/skills/skills/net-08a2fc88/SKILL.md +0 -45
- package/skills/skills/net-0935edf1/SKILL.md +0 -45
- package/skills/skills/net-0e7f91e4/SKILL.md +0 -45
- package/skills/skills/net-0f2850e0/SKILL.md +0 -45
- package/skills/skills/net-107ab486/SKILL.md +0 -45
- package/skills/skills/net-111e79b0/SKILL.md +0 -45
- package/skills/skills/net-126876c1/SKILL.md +0 -45
- package/skills/skills/net-13eeb575/SKILL.md +0 -45
- package/skills/skills/net-14102d54/SKILL.md +0 -45
- package/skills/skills/net-14e9ad0d/SKILL.md +0 -45
- package/skills/skills/net-184175d3/SKILL.md +0 -45
- package/skills/skills/net-1da1c695/SKILL.md +0 -45
- package/skills/skills/net-240a14ec/SKILL.md +0 -45
- package/skills/skills/net-2784f98b/SKILL.md +0 -45
- package/skills/skills/net-292ef917/SKILL.md +0 -45
- package/skills/skills/net-3434e92f/SKILL.md +0 -45
- package/skills/skills/net-35019e6b/SKILL.md +0 -45
- package/skills/skills/net-3bbc6afb/SKILL.md +0 -45
- package/skills/skills/net-3bdf9d9d/SKILL.md +0 -45
- package/skills/skills/net-3dcb84d3/SKILL.md +0 -45
- package/skills/skills/net-431cccf9/SKILL.md +0 -45
- package/skills/skills/net-435a9f7f/SKILL.md +0 -45
- package/skills/skills/net-4508101f/SKILL.md +0 -45
- package/skills/skills/net-4585c9e7/SKILL.md +0 -45
- package/skills/skills/net-479612a0/SKILL.md +0 -45
- package/skills/skills/net-47a19838/SKILL.md +0 -45
- package/skills/skills/net-4e36e1e3/SKILL.md +0 -45
- package/skills/skills/net-509b8001/SKILL.md +0 -45
- package/skills/skills/net-51930c5e/SKILL.md +0 -45
- package/skills/skills/net-56dbd63f/SKILL.md +0 -45
- package/skills/skills/net-57387462/SKILL.md +0 -45
- package/skills/skills/net-5c115606/SKILL.md +0 -45
- package/skills/skills/net-5d27f392/SKILL.md +0 -45
- package/skills/skills/net-5f69c938/SKILL.md +0 -45
- package/skills/skills/net-5fa6c13b/SKILL.md +0 -45
- package/skills/skills/net-61580202/SKILL.md +0 -45
- package/skills/skills/net-61926703/SKILL.md +0 -45
- package/skills/skills/net-61f64fbc/SKILL.md +0 -45
- package/skills/skills/net-6200f3b2/SKILL.md +0 -45
- package/skills/skills/net-63c3eda3/SKILL.md +0 -45
- package/skills/skills/net-66e6119b/SKILL.md +0 -45
- package/skills/skills/net-68643014/SKILL.md +0 -45
- package/skills/skills/net-686632aa/SKILL.md +0 -45
- package/skills/skills/net-6967ff14/SKILL.md +0 -45
- package/skills/skills/net-6996f499/SKILL.md +0 -45
- package/skills/skills/net-6c3b02c2/SKILL.md +0 -45
- package/skills/skills/net-6eb37f63/SKILL.md +0 -45
- package/skills/skills/net-6f96c190/SKILL.md +0 -45
- package/skills/skills/net-6fb27488/SKILL.md +0 -45
- package/skills/skills/net-703559d0/SKILL.md +0 -45
- package/skills/skills/net-706d2692/SKILL.md +0 -45
- package/skills/skills/net-70a20e04/SKILL.md +0 -45
- package/skills/skills/net-7376158c/SKILL.md +0 -45
- package/skills/skills/net-74d647cb/SKILL.md +0 -45
- package/skills/skills/net-74e8a576/SKILL.md +0 -45
- package/skills/skills/net-7801c2c0/SKILL.md +0 -45
- package/skills/skills/net-78cae54d/SKILL.md +0 -45
- package/skills/skills/net-78ec0324/SKILL.md +0 -45
- package/skills/skills/net-7998097c/SKILL.md +0 -45
- package/skills/skills/net-7d81ae06/SKILL.md +0 -45
- package/skills/skills/net-7eabbbc8/SKILL.md +0 -45
- package/skills/skills/net-7ed4f2c5/SKILL.md +0 -45
- package/skills/skills/net-80b56cd6/SKILL.md +0 -45
- package/skills/skills/net-83447546/SKILL.md +0 -45
- package/skills/skills/net-8361fe5b/SKILL.md +0 -45
- package/skills/skills/net-85e3996c/SKILL.md +0 -45
- package/skills/skills/net-8897d5cc/SKILL.md +0 -45
- package/skills/skills/net-88ad93a6/SKILL.md +0 -45
- package/skills/skills/net-8e6f359e/SKILL.md +0 -45
- package/skills/skills/net-8edc4cdb/SKILL.md +0 -45
- package/skills/skills/net-8f6169e9/SKILL.md +0 -45
- package/skills/skills/net-91e00638/SKILL.md +0 -45
- package/skills/skills/net-96c61a3c/SKILL.md +0 -45
- package/skills/skills/net-99076a29/SKILL.md +0 -45
- package/skills/skills/net-998f3641/SKILL.md +0 -45
- package/skills/skills/net-a1d7228a/SKILL.md +0 -45
- package/skills/skills/net-a74da501/SKILL.md +0 -45
- package/skills/skills/net-ac57deb7/SKILL.md +0 -45
- package/skills/skills/net-b22d2f2b/SKILL.md +0 -45
- package/skills/skills/net-b2b29d8d/SKILL.md +0 -45
- package/skills/skills/net-b2ddce5d/SKILL.md +0 -45
- package/skills/skills/net-b4151e9a/SKILL.md +0 -45
- package/skills/skills/net-b873d6f7/SKILL.md +0 -45
- package/skills/skills/net-bd3d2d55/SKILL.md +0 -45
- package/skills/skills/net-c2a3f019/SKILL.md +0 -45
- package/skills/skills/net-c685b788/SKILL.md +0 -45
- package/skills/skills/net-c6c1fd79/SKILL.md +0 -45
- package/skills/skills/net-c74a1b5d/SKILL.md +0 -45
- package/skills/skills/net-cdac702d/SKILL.md +0 -45
- package/skills/skills/net-d12dff5c/SKILL.md +0 -45
- package/skills/skills/net-d3747882/SKILL.md +0 -45
- package/skills/skills/net-d5fefa59/SKILL.md +0 -45
- package/skills/skills/net-d67ec725/SKILL.md +0 -45
- package/skills/skills/net-d80c1c4c/SKILL.md +0 -45
- package/skills/skills/net-d9cb43b0/SKILL.md +0 -45
- package/skills/skills/net-da559517/SKILL.md +0 -45
- package/skills/skills/net-db4f414e/SKILL.md +0 -45
- package/skills/skills/net-dc09d67c/SKILL.md +0 -45
- package/skills/skills/net-e2d185de/SKILL.md +0 -45
- package/skills/skills/net-e2fc73f8/SKILL.md +0 -45
- package/skills/skills/net-e33ef0c2/SKILL.md +0 -45
- package/skills/skills/net-e346863c/SKILL.md +0 -45
- package/skills/skills/net-e6b3389a/SKILL.md +0 -45
- package/skills/skills/net-e9758fc0/SKILL.md +0 -45
- package/skills/skills/net-e9a9747a/SKILL.md +0 -45
- package/skills/skills/net-ea14aab8/SKILL.md +0 -45
- package/skills/skills/net-eba92ac1/SKILL.md +0 -45
- package/skills/skills/net-f29d91d2/SKILL.md +0 -45
- package/skills/skills/net-f314dd0d/SKILL.md +0 -45
- package/skills/skills/net-f332b629/SKILL.md +0 -45
- package/skills/skills/net-f7df127c/SKILL.md +0 -45
- package/skills/skills/net-fb9d8f5d/SKILL.md +0 -45
- package/skills/skills/net-fdec2c86/SKILL.md +0 -45
- package/skills/skills/os-0205cf9b/SKILL.md +0 -45
- package/skills/skills/os-027dc9be/SKILL.md +0 -45
- package/skills/skills/os-03c0d7d6/SKILL.md +0 -45
- package/skills/skills/os-040b5505/SKILL.md +0 -45
- package/skills/skills/os-06fa98ed/SKILL.md +0 -45
- package/skills/skills/os-0854291c/SKILL.md +0 -45
- package/skills/skills/os-0c7f14cb/SKILL.md +0 -45
- package/skills/skills/os-0d855af2/SKILL.md +0 -45
- package/skills/skills/os-0e87e997/SKILL.md +0 -45
- package/skills/skills/os-0f8ed882/SKILL.md +0 -45
- package/skills/skills/os-111ce1de/SKILL.md +0 -45
- package/skills/skills/os-1234eb00/SKILL.md +0 -45
- package/skills/skills/os-128f3820/SKILL.md +0 -45
- package/skills/skills/os-15796db5/SKILL.md +0 -45
- package/skills/skills/os-1898928a/SKILL.md +0 -45
- package/skills/skills/os-192b8ca9/SKILL.md +0 -45
- package/skills/skills/os-1d3bcf28/SKILL.md +0 -45
- package/skills/skills/os-1f224514/SKILL.md +0 -45
- package/skills/skills/os-26a4f86a/SKILL.md +0 -45
- package/skills/skills/os-29c96147/SKILL.md +0 -45
- package/skills/skills/os-2ea9a5ff/SKILL.md +0 -45
- package/skills/skills/os-300ef22c/SKILL.md +0 -45
- package/skills/skills/os-310dda5b/SKILL.md +0 -45
- package/skills/skills/os-313ef4ed/SKILL.md +0 -45
- package/skills/skills/os-329a2147/SKILL.md +0 -45
- package/skills/skills/os-34ad4b62/SKILL.md +0 -45
- package/skills/skills/os-350bc623/SKILL.md +0 -45
- package/skills/skills/os-35ee1a30/SKILL.md +0 -45
- package/skills/skills/os-3cd28220/SKILL.md +0 -45
- package/skills/skills/os-3d84e0c9/SKILL.md +0 -45
- package/skills/skills/os-3db42aac/SKILL.md +0 -45
- package/skills/skills/os-3e0aff42/SKILL.md +0 -45
- package/skills/skills/os-3e9405d2/SKILL.md +0 -45
- package/skills/skills/os-41d14544/SKILL.md +0 -45
- package/skills/skills/os-462f3ed4/SKILL.md +0 -45
- package/skills/skills/os-485833fa/SKILL.md +0 -45
- package/skills/skills/os-4a1cf781/SKILL.md +0 -45
- package/skills/skills/os-4bf77933/SKILL.md +0 -45
- package/skills/skills/os-4c14cec2/SKILL.md +0 -45
- package/skills/skills/os-4f05d577/SKILL.md +0 -45
- package/skills/skills/os-4f50ad0b/SKILL.md +0 -45
- package/skills/skills/os-509a4596/SKILL.md +0 -45
- package/skills/skills/os-512b1b6c/SKILL.md +0 -45
- package/skills/skills/os-5192621b/SKILL.md +0 -45
- package/skills/skills/os-55672763/SKILL.md +0 -45
- package/skills/skills/os-5582bce6/SKILL.md +0 -45
- package/skills/skills/os-5a096a1f/SKILL.md +0 -45
- package/skills/skills/os-5ca15108/SKILL.md +0 -45
- package/skills/skills/os-601663e1/SKILL.md +0 -45
- package/skills/skills/os-607f1963/SKILL.md +0 -45
- package/skills/skills/os-6158581b/SKILL.md +0 -45
- package/skills/skills/os-62f9278b/SKILL.md +0 -45
- package/skills/skills/os-63797b86/SKILL.md +0 -45
- package/skills/skills/os-6a1fe224/SKILL.md +0 -45
- package/skills/skills/os-6b0a68bf/SKILL.md +0 -45
- package/skills/skills/os-6e5cee67/SKILL.md +0 -45
- package/skills/skills/os-6fb1ff58/SKILL.md +0 -45
- package/skills/skills/os-71389592/SKILL.md +0 -45
- package/skills/skills/os-72e879a3/SKILL.md +0 -45
- package/skills/skills/os-7598748a/SKILL.md +0 -45
- package/skills/skills/os-80cc3283/SKILL.md +0 -45
- package/skills/skills/os-819f3093/SKILL.md +0 -45
- package/skills/skills/os-83670c2b/SKILL.md +0 -45
- package/skills/skills/os-878c18b3/SKILL.md +0 -45
- package/skills/skills/os-89ed7af1/SKILL.md +0 -45
- package/skills/skills/os-8cb7279d/SKILL.md +0 -45
- package/skills/skills/os-92276145/SKILL.md +0 -45
- package/skills/skills/os-955c4d66/SKILL.md +0 -45
- package/skills/skills/os-97aacf40/SKILL.md +0 -45
- package/skills/skills/os-9b6ed02c/SKILL.md +0 -45
- package/skills/skills/os-9c86a7a2/SKILL.md +0 -45
- package/skills/skills/os-a13ce4aa/SKILL.md +0 -45
- package/skills/skills/os-a568affe/SKILL.md +0 -45
- package/skills/skills/os-abd48f17/SKILL.md +0 -45
- package/skills/skills/os-b0416edc/SKILL.md +0 -45
- package/skills/skills/os-b6509cac/SKILL.md +0 -45
- package/skills/skills/os-b718657b/SKILL.md +0 -45
- package/skills/skills/os-b776ade1/SKILL.md +0 -45
- package/skills/skills/os-ba24fa08/SKILL.md +0 -45
- package/skills/skills/os-bd1fc177/SKILL.md +0 -45
- package/skills/skills/os-bda92711/SKILL.md +0 -45
- package/skills/skills/os-c0fa71bd/SKILL.md +0 -45
- package/skills/skills/os-c3d5cd44/SKILL.md +0 -45
- package/skills/skills/os-c6b6a763/SKILL.md +0 -45
- package/skills/skills/os-c7661eb1/SKILL.md +0 -45
- package/skills/skills/os-c76b5a43/SKILL.md +0 -45
- package/skills/skills/os-c7d35a30/SKILL.md +0 -45
- package/skills/skills/os-c980a25d/SKILL.md +0 -45
- package/skills/skills/os-c9f8df6e/SKILL.md +0 -45
- package/skills/skills/os-cc49ef2f/SKILL.md +0 -45
- package/skills/skills/os-cd9e686a/SKILL.md +0 -45
- package/skills/skills/os-cfa66a1b/SKILL.md +0 -45
- package/skills/skills/os-d237e500/SKILL.md +0 -45
- package/skills/skills/os-d39ef086/SKILL.md +0 -45
- package/skills/skills/os-d4f9e813/SKILL.md +0 -45
- package/skills/skills/os-d97915c0/SKILL.md +0 -45
- package/skills/skills/os-da0aadde/SKILL.md +0 -45
- package/skills/skills/os-da482caf/SKILL.md +0 -45
- package/skills/skills/os-dd4ff45e/SKILL.md +0 -45
- package/skills/skills/os-de0556c5/SKILL.md +0 -45
- package/skills/skills/os-e0ad3364/SKILL.md +0 -45
- package/skills/skills/os-e7612c68/SKILL.md +0 -45
- package/skills/skills/os-ea444e45/SKILL.md +0 -45
- package/skills/skills/os-ea6e7e0b/SKILL.md +0 -45
- package/skills/skills/os-ebc34d83/SKILL.md +0 -45
- package/skills/skills/os-ecbebbe3/SKILL.md +0 -45
- package/skills/skills/os-ecfceae7/SKILL.md +0 -45
- package/skills/skills/os-ed8de3a3/SKILL.md +0 -45
- package/skills/skills/os-f69c0b08/SKILL.md +0 -45
- package/skills/skills/os-f6ae6205/SKILL.md +0 -45
- package/skills/skills/os-f9bf8dd4/SKILL.md +0 -45
- package/skills/skills/os-fcdd828d/SKILL.md +0 -45
- package/skills/skills/pylang-01b23f80/SKILL.md +0 -45
- package/skills/skills/pylang-074fd698/SKILL.md +0 -45
- package/skills/skills/pylang-0b490bb2/SKILL.md +0 -45
- package/skills/skills/pylang-0ca7f08b/SKILL.md +0 -45
- package/skills/skills/pylang-10ce3e91/SKILL.md +0 -45
- package/skills/skills/pylang-15f76c64/SKILL.md +0 -45
- package/skills/skills/pylang-1703046f/SKILL.md +0 -45
- package/skills/skills/pylang-1aa3e939/SKILL.md +0 -45
- package/skills/skills/pylang-1bed54cf/SKILL.md +0 -45
- package/skills/skills/pylang-1dd35612/SKILL.md +0 -45
- package/skills/skills/pylang-24273d7b/SKILL.md +0 -45
- package/skills/skills/pylang-2853f59f/SKILL.md +0 -45
- package/skills/skills/pylang-2a6bc16e/SKILL.md +0 -45
- package/skills/skills/pylang-2ae78997/SKILL.md +0 -45
- package/skills/skills/pylang-2bc88f4c/SKILL.md +0 -45
- package/skills/skills/pylang-31f5b8db/SKILL.md +0 -45
- package/skills/skills/pylang-36d178bc/SKILL.md +0 -45
- package/skills/skills/pylang-38600583/SKILL.md +0 -45
- package/skills/skills/pylang-38e8f9ff/SKILL.md +0 -45
- package/skills/skills/pylang-395085ca/SKILL.md +0 -45
- package/skills/skills/pylang-399b317e/SKILL.md +0 -45
- package/skills/skills/pylang-39c72c78/SKILL.md +0 -45
- package/skills/skills/pylang-3a659480/SKILL.md +0 -45
- package/skills/skills/pylang-482be62b/SKILL.md +0 -45
- package/skills/skills/pylang-486a1e94/SKILL.md +0 -45
- package/skills/skills/pylang-49026041/SKILL.md +0 -45
- package/skills/skills/pylang-4963b28a/SKILL.md +0 -45
- package/skills/skills/pylang-4af9140e/SKILL.md +0 -45
- package/skills/skills/pylang-4ca283f2/SKILL.md +0 -45
- package/skills/skills/pylang-4ddf31f3/SKILL.md +0 -45
- package/skills/skills/pylang-50614726/SKILL.md +0 -45
- package/skills/skills/pylang-5102c069/SKILL.md +0 -45
- package/skills/skills/pylang-521b1bf8/SKILL.md +0 -45
- package/skills/skills/pylang-5880b7a1/SKILL.md +0 -45
- package/skills/skills/pylang-61a9102d/SKILL.md +0 -45
- package/skills/skills/pylang-621123dd/SKILL.md +0 -45
- package/skills/skills/pylang-642cd625/SKILL.md +0 -45
- package/skills/skills/pylang-65ca79b7/SKILL.md +0 -45
- package/skills/skills/pylang-672df225/SKILL.md +0 -45
- package/skills/skills/pylang-67d3368e/SKILL.md +0 -45
- package/skills/skills/pylang-6be54340/SKILL.md +0 -45
- package/skills/skills/pylang-70b2006f/SKILL.md +0 -45
- package/skills/skills/pylang-70b215f1/SKILL.md +0 -45
- package/skills/skills/pylang-730c3fe4/SKILL.md +0 -45
- package/skills/skills/pylang-733c1286/SKILL.md +0 -45
- package/skills/skills/pylang-79845f4d/SKILL.md +0 -45
- package/skills/skills/pylang-7c4cc6f8/SKILL.md +0 -45
- package/skills/skills/pylang-7c7193ad/SKILL.md +0 -45
- package/skills/skills/pylang-7d86ab5d/SKILL.md +0 -45
- package/skills/skills/pylang-7df8ca78/SKILL.md +0 -45
- package/skills/skills/pylang-8182681d/SKILL.md +0 -45
- package/skills/skills/pylang-81ad40ee/SKILL.md +0 -45
- package/skills/skills/pylang-8283d7c0/SKILL.md +0 -45
- package/skills/skills/pylang-82b73f3d/SKILL.md +0 -45
- package/skills/skills/pylang-8404bbde/SKILL.md +0 -45
- package/skills/skills/pylang-8584040d/SKILL.md +0 -45
- package/skills/skills/pylang-85d8617b/SKILL.md +0 -45
- package/skills/skills/pylang-886935a3/SKILL.md +0 -45
- package/skills/skills/pylang-88ab2f96/SKILL.md +0 -45
- package/skills/skills/pylang-8b6f071e/SKILL.md +0 -45
- package/skills/skills/pylang-8d6ec58a/SKILL.md +0 -45
- package/skills/skills/pylang-8fe98252/SKILL.md +0 -45
- package/skills/skills/pylang-9018c39a/SKILL.md +0 -45
- package/skills/skills/pylang-91277748/SKILL.md +0 -45
- package/skills/skills/pylang-943b9dcb/SKILL.md +0 -45
- package/skills/skills/pylang-961e9e43/SKILL.md +0 -45
- package/skills/skills/pylang-962954d9/SKILL.md +0 -45
- package/skills/skills/pylang-9dbd8e2b/SKILL.md +0 -45
- package/skills/skills/pylang-a02eac31/SKILL.md +0 -45
- package/skills/skills/pylang-a4d3d7b1/SKILL.md +0 -45
- package/skills/skills/pylang-a7c3d0e2/SKILL.md +0 -45
- package/skills/skills/pylang-a88db70d/SKILL.md +0 -45
- package/skills/skills/pylang-ab7dddc2/SKILL.md +0 -45
- package/skills/skills/pylang-ac2a4b38/SKILL.md +0 -45
- package/skills/skills/pylang-afaf67c0/SKILL.md +0 -45
- package/skills/skills/pylang-b00660e6/SKILL.md +0 -45
- package/skills/skills/pylang-b4d7616d/SKILL.md +0 -45
- package/skills/skills/pylang-b67b1878/SKILL.md +0 -45
- package/skills/skills/pylang-b8040e1c/SKILL.md +0 -45
- package/skills/skills/pylang-b880c6c6/SKILL.md +0 -45
- package/skills/skills/pylang-b8d45f76/SKILL.md +0 -45
- package/skills/skills/pylang-ba956e52/SKILL.md +0 -45
- package/skills/skills/pylang-bb18b1f9/SKILL.md +0 -45
- package/skills/skills/pylang-bb46f3f2/SKILL.md +0 -45
- package/skills/skills/pylang-be55a094/SKILL.md +0 -45
- package/skills/skills/pylang-beb47b63/SKILL.md +0 -45
- package/skills/skills/pylang-c017681a/SKILL.md +0 -45
- package/skills/skills/pylang-c1317cd9/SKILL.md +0 -45
- package/skills/skills/pylang-c36fabf7/SKILL.md +0 -45
- package/skills/skills/pylang-c42465ec/SKILL.md +0 -45
- package/skills/skills/pylang-c5c76a12/SKILL.md +0 -45
- package/skills/skills/pylang-c910ad31/SKILL.md +0 -45
- package/skills/skills/pylang-ca9332cf/SKILL.md +0 -45
- package/skills/skills/pylang-cce90fa0/SKILL.md +0 -45
- package/skills/skills/pylang-cd4234a5/SKILL.md +0 -45
- package/skills/skills/pylang-cf0fca1c/SKILL.md +0 -45
- package/skills/skills/pylang-d2001e1f/SKILL.md +0 -45
- package/skills/skills/pylang-d616eb28/SKILL.md +0 -45
- package/skills/skills/pylang-d8962e66/SKILL.md +0 -45
- package/skills/skills/pylang-db6214cd/SKILL.md +0 -45
- package/skills/skills/pylang-dcde3040/SKILL.md +0 -45
- package/skills/skills/pylang-dfad3dba/SKILL.md +0 -45
- package/skills/skills/pylang-dfd5aac2/SKILL.md +0 -45
- package/skills/skills/pylang-e1aa3818/SKILL.md +0 -45
- package/skills/skills/pylang-e476915b/SKILL.md +0 -45
- package/skills/skills/pylang-e88e31fd/SKILL.md +0 -45
- package/skills/skills/pylang-ecd569d2/SKILL.md +0 -45
- package/skills/skills/pylang-ecf27e0c/SKILL.md +0 -45
- package/skills/skills/pylang-f124f0e6/SKILL.md +0 -45
- package/skills/skills/pylang-f127a8d1/SKILL.md +0 -45
- package/skills/skills/pylang-f2d6ec27/SKILL.md +0 -45
- package/skills/skills/pylang-f2f40090/SKILL.md +0 -45
- package/skills/skills/pylang-f4aa9e65/SKILL.md +0 -45
- package/skills/skills/pylang-f4f820d4/SKILL.md +0 -45
- package/skills/skills/pylang-f5b34833/SKILL.md +0 -45
- package/skills/skills/pylang-f6ebb66e/SKILL.md +0 -45
- package/skills/skills/pylang-f78bdcd7/SKILL.md +0 -45
- package/skills/skills/pylang-f92bc49b/SKILL.md +0 -45
- package/skills/skills/pylang-fd7595f0/SKILL.md +0 -45
- package/skills/skills/pylang-fda87aa1/SKILL.md +0 -45
- /package/skills/skills/{analyze-type-infer → lingshu-compiler/units/analyze-type-infer}/SKILL.md +0 -0
- /package/skills/skills/{check-name-real → lingshu-compiler/units/check-name-real}/SKILL.md +0 -0
- /package/skills/skills/{compile-assign → lingshu-compiler/units/compile-assign}/SKILL.md +0 -0
- /package/skills/skills/{compile-expr-tree → lingshu-compiler/units/compile-expr-tree}/SKILL.md +0 -0
- /package/skills/skills/{compile-full-pipeline → lingshu-compiler/units/compile-full-pipeline}/SKILL.md +0 -0
- /package/skills/skills/{compile-func-def → lingshu-compiler/units/compile-func-def}/SKILL.md +0 -0
- /package/skills/skills/{compile-if-then → lingshu-compiler/units/compile-if-then}/SKILL.md +0 -0
- /package/skills/skills/{compile-logic-expr → lingshu-compiler/units/compile-logic-expr}/SKILL.md +0 -0
- /package/skills/skills/{compile-recursive → lingshu-compiler/units/compile-recursive}/SKILL.md +0 -0
- /package/skills/skills/{compile-scope → lingshu-compiler/units/compile-scope}/SKILL.md +0 -0
- /package/skills/skills/{compile-type-check → lingshu-compiler/units/compile-type-check}/SKILL.md +0 -0
- /package/skills/skills/{compile-while → lingshu-compiler/units/compile-while}/SKILL.md +0 -0
- /package/skills/skills/{compiler-0010c4bf → lingshu-compiler/units/compiler-0010c4bf}/SKILL.md +0 -0
- /package/skills/skills/{compiler-0355bffb → lingshu-compiler/units/compiler-0355bffb}/SKILL.md +0 -0
- /package/skills/skills/{compiler-0361708a → lingshu-compiler/units/compiler-0361708a}/SKILL.md +0 -0
- /package/skills/skills/{compiler-054a0414 → lingshu-compiler/units/compiler-054a0414}/SKILL.md +0 -0
- /package/skills/skills/{compiler-05a1691a → lingshu-compiler/units/compiler-05a1691a}/SKILL.md +0 -0
- /package/skills/skills/{compiler-05eeed1e → lingshu-compiler/units/compiler-05eeed1e}/SKILL.md +0 -0
- /package/skills/skills/{compiler-0622a1f6 → lingshu-compiler/units/compiler-0622a1f6}/SKILL.md +0 -0
- /package/skills/skills/{compiler-08b54217 → lingshu-compiler/units/compiler-08b54217}/SKILL.md +0 -0
- /package/skills/skills/{compiler-0a62b70c → lingshu-compiler/units/compiler-0a62b70c}/SKILL.md +0 -0
- /package/skills/skills/{compiler-0ab24d00 → lingshu-compiler/units/compiler-0ab24d00}/SKILL.md +0 -0
- /package/skills/skills/{compiler-0e093688 → lingshu-compiler/units/compiler-0e093688}/SKILL.md +0 -0
- /package/skills/skills/{compiler-0e82b966 → lingshu-compiler/units/compiler-0e82b966}/SKILL.md +0 -0
- /package/skills/skills/{compiler-0ee9b9b9 → lingshu-compiler/units/compiler-0ee9b9b9}/SKILL.md +0 -0
- /package/skills/skills/{compiler-0f3787e6 → lingshu-compiler/units/compiler-0f3787e6}/SKILL.md +0 -0
- /package/skills/skills/{compiler-1028685f → lingshu-compiler/units/compiler-1028685f}/SKILL.md +0 -0
- /package/skills/skills/{compiler-11897630 → lingshu-compiler/units/compiler-11897630}/SKILL.md +0 -0
- /package/skills/skills/{compiler-16661b9b → lingshu-compiler/units/compiler-16661b9b}/SKILL.md +0 -0
- /package/skills/skills/{compiler-1f722303 → lingshu-compiler/units/compiler-1f722303}/SKILL.md +0 -0
- /package/skills/skills/{compiler-25be1262 → lingshu-compiler/units/compiler-25be1262}/SKILL.md +0 -0
- /package/skills/skills/{compiler-2a76ba07 → lingshu-compiler/units/compiler-2a76ba07}/SKILL.md +0 -0
- /package/skills/skills/{compiler-2dbea54a → lingshu-compiler/units/compiler-2dbea54a}/SKILL.md +0 -0
- /package/skills/skills/{compiler-2df52f16 → lingshu-compiler/units/compiler-2df52f16}/SKILL.md +0 -0
- /package/skills/skills/{compiler-2ec2c9d2 → lingshu-compiler/units/compiler-2ec2c9d2}/SKILL.md +0 -0
- /package/skills/skills/{compiler-2f8c8f39 → lingshu-compiler/units/compiler-2f8c8f39}/SKILL.md +0 -0
- /package/skills/skills/{compiler-38378ac7 → lingshu-compiler/units/compiler-38378ac7}/SKILL.md +0 -0
- /package/skills/skills/{compiler-39457d2e → lingshu-compiler/units/compiler-39457d2e}/SKILL.md +0 -0
- /package/skills/skills/{compiler-39fb5926 → lingshu-compiler/units/compiler-39fb5926}/SKILL.md +0 -0
- /package/skills/skills/{compiler-47f4fbfa → lingshu-compiler/units/compiler-47f4fbfa}/SKILL.md +0 -0
- /package/skills/skills/{compiler-4a8cd1f1 → lingshu-compiler/units/compiler-4a8cd1f1}/SKILL.md +0 -0
- /package/skills/skills/{compiler-4b230b6b → lingshu-compiler/units/compiler-4b230b6b}/SKILL.md +0 -0
- /package/skills/skills/{compiler-4cbbda95 → lingshu-compiler/units/compiler-4cbbda95}/SKILL.md +0 -0
- /package/skills/skills/{compiler-4d5a68ff → lingshu-compiler/units/compiler-4d5a68ff}/SKILL.md +0 -0
- /package/skills/skills/{compiler-56dc9bdd → lingshu-compiler/units/compiler-56dc9bdd}/SKILL.md +0 -0
- /package/skills/skills/{compiler-57e76ebe → lingshu-compiler/units/compiler-57e76ebe}/SKILL.md +0 -0
- /package/skills/skills/{compiler-61ff016b → lingshu-compiler/units/compiler-61ff016b}/SKILL.md +0 -0
- /package/skills/skills/{compiler-63eae588 → lingshu-compiler/units/compiler-63eae588}/SKILL.md +0 -0
- /package/skills/skills/{compiler-64c4224b → lingshu-compiler/units/compiler-64c4224b}/SKILL.md +0 -0
- /package/skills/skills/{compiler-66377955 → lingshu-compiler/units/compiler-66377955}/SKILL.md +0 -0
- /package/skills/skills/{compiler-674ab4f6 → lingshu-compiler/units/compiler-674ab4f6}/SKILL.md +0 -0
- /package/skills/skills/{compiler-6af76fd6 → lingshu-compiler/units/compiler-6af76fd6}/SKILL.md +0 -0
- /package/skills/skills/{compiler-6d979db2 → lingshu-compiler/units/compiler-6d979db2}/SKILL.md +0 -0
- /package/skills/skills/{compiler-6de326c0 → lingshu-compiler/units/compiler-6de326c0}/SKILL.md +0 -0
- /package/skills/skills/{compiler-6f1c0eea → lingshu-compiler/units/compiler-6f1c0eea}/SKILL.md +0 -0
- /package/skills/skills/{compiler-724d6c9b → lingshu-compiler/units/compiler-724d6c9b}/SKILL.md +0 -0
- /package/skills/skills/{compiler-7690177f → lingshu-compiler/units/compiler-7690177f}/SKILL.md +0 -0
- /package/skills/skills/{compiler-7b229a7d → lingshu-compiler/units/compiler-7b229a7d}/SKILL.md +0 -0
- /package/skills/skills/{compiler-7f471b3a → lingshu-compiler/units/compiler-7f471b3a}/SKILL.md +0 -0
- /package/skills/skills/{compiler-815cad08 → lingshu-compiler/units/compiler-815cad08}/SKILL.md +0 -0
- /package/skills/skills/{compiler-83c61634 → lingshu-compiler/units/compiler-83c61634}/SKILL.md +0 -0
- /package/skills/skills/{compiler-8c798c81 → lingshu-compiler/units/compiler-8c798c81}/SKILL.md +0 -0
- /package/skills/skills/{compiler-8dd747ac → lingshu-compiler/units/compiler-8dd747ac}/SKILL.md +0 -0
- /package/skills/skills/{compiler-90324d0a → lingshu-compiler/units/compiler-90324d0a}/SKILL.md +0 -0
- /package/skills/skills/{compiler-94b8d72d → lingshu-compiler/units/compiler-94b8d72d}/SKILL.md +0 -0
- /package/skills/skills/{compiler-94f12231 → lingshu-compiler/units/compiler-94f12231}/SKILL.md +0 -0
- /package/skills/skills/{compiler-95937c16 → lingshu-compiler/units/compiler-95937c16}/SKILL.md +0 -0
- /package/skills/skills/{compiler-98a5625b → lingshu-compiler/units/compiler-98a5625b}/SKILL.md +0 -0
- /package/skills/skills/{compiler-98b4c42f → lingshu-compiler/units/compiler-98b4c42f}/SKILL.md +0 -0
- /package/skills/skills/{compiler-98e3894a → lingshu-compiler/units/compiler-98e3894a}/SKILL.md +0 -0
- /package/skills/skills/{compiler-9bdfe4b8 → lingshu-compiler/units/compiler-9bdfe4b8}/SKILL.md +0 -0
- /package/skills/skills/{compiler-9d9b4e83 → lingshu-compiler/units/compiler-9d9b4e83}/SKILL.md +0 -0
- /package/skills/skills/{compiler-9f7be5ad → lingshu-compiler/units/compiler-9f7be5ad}/SKILL.md +0 -0
- /package/skills/skills/{compiler-a6daf076 → lingshu-compiler/units/compiler-a6daf076}/SKILL.md +0 -0
- /package/skills/skills/{compiler-a7995a0c → lingshu-compiler/units/compiler-a7995a0c}/SKILL.md +0 -0
- /package/skills/skills/{compiler-a8399248 → lingshu-compiler/units/compiler-a8399248}/SKILL.md +0 -0
- /package/skills/skills/{compiler-aabbd099 → lingshu-compiler/units/compiler-aabbd099}/SKILL.md +0 -0
- /package/skills/skills/{compiler-afe169d8 → lingshu-compiler/units/compiler-afe169d8}/SKILL.md +0 -0
- /package/skills/skills/{compiler-b0678bda → lingshu-compiler/units/compiler-b0678bda}/SKILL.md +0 -0
- /package/skills/skills/{compiler-b09bd196 → lingshu-compiler/units/compiler-b09bd196}/SKILL.md +0 -0
- /package/skills/skills/{compiler-b1396e23 → lingshu-compiler/units/compiler-b1396e23}/SKILL.md +0 -0
- /package/skills/skills/{compiler-b9b31ce0 → lingshu-compiler/units/compiler-b9b31ce0}/SKILL.md +0 -0
- /package/skills/skills/{compiler-c10264a7 → lingshu-compiler/units/compiler-c10264a7}/SKILL.md +0 -0
- /package/skills/skills/{compiler-cb1e8e4b → lingshu-compiler/units/compiler-cb1e8e4b}/SKILL.md +0 -0
- /package/skills/skills/{compiler-ccafd438 → lingshu-compiler/units/compiler-ccafd438}/SKILL.md +0 -0
- /package/skills/skills/{compiler-cda9c262 → lingshu-compiler/units/compiler-cda9c262}/SKILL.md +0 -0
- /package/skills/skills/{compiler-ce648068 → lingshu-compiler/units/compiler-ce648068}/SKILL.md +0 -0
- /package/skills/skills/{compiler-cf5776a4 → lingshu-compiler/units/compiler-cf5776a4}/SKILL.md +0 -0
- /package/skills/skills/{compiler-d974e5d3 → lingshu-compiler/units/compiler-d974e5d3}/SKILL.md +0 -0
- /package/skills/skills/{compiler-e3979fd3 → lingshu-compiler/units/compiler-e3979fd3}/SKILL.md +0 -0
- /package/skills/skills/{compiler-eb1cf2b5 → lingshu-compiler/units/compiler-eb1cf2b5}/SKILL.md +0 -0
- /package/skills/skills/{compiler-ecb30d5b → lingshu-compiler/units/compiler-ecb30d5b}/SKILL.md +0 -0
- /package/skills/skills/{compiler-f8c8b24b → lingshu-compiler/units/compiler-f8c8b24b}/SKILL.md +0 -0
- /package/skills/skills/{compiler-f99fedbe → lingshu-compiler/units/compiler-f99fedbe}/SKILL.md +0 -0
- /package/skills/skills/{compiler-fa8ff5f7 → lingshu-compiler/units/compiler-fa8ff5f7}/SKILL.md +0 -0
- /package/skills/skills/{compiler-fe1b058d → lingshu-compiler/units/compiler-fe1b058d}/SKILL.md +0 -0
- /package/skills/skills/{lex-chinese-program → lingshu-compiler/units/lex-chinese-program}/SKILL.md +0 -0
- /package/skills/skills/{lex-dao-de-jing → lingshu-compiler/units/lex-dao-de-jing}/SKILL.md +0 -0
- /package/skills/skills/{lex-nine-chapters → lingshu-compiler/units/lex-nine-chapters}/SKILL.md +0 -0
- /package/skills/skills/{vm-arithmetic → lingshu-compiler/units/vm-arithmetic}/SKILL.md +0 -0
- /package/skills/skills/{vm-array-ops → lingshu-compiler/units/vm-array-ops}/SKILL.md +0 -0
- /package/skills/skills/{vm-closure-call → lingshu-compiler/units/vm-closure-call}/SKILL.md +0 -0
- /package/skills/skills/{vm-closure-create → lingshu-compiler/units/vm-closure-create}/SKILL.md +0 -0
- /package/skills/skills/{vm-compare → lingshu-compiler/units/vm-compare}/SKILL.md +0 -0
- /package/skills/skills/{vm-cond-jump → lingshu-compiler/units/vm-cond-jump}/SKILL.md +0 -0
- /package/skills/skills/{vm-cond-space → lingshu-compiler/units/vm-cond-space}/SKILL.md +0 -0
- /package/skills/skills/{vm-exception → lingshu-compiler/units/vm-exception}/SKILL.md +0 -0
- /package/skills/skills/{vm-func-call → lingshu-compiler/units/vm-func-call}/SKILL.md +0 -0
- /package/skills/skills/{vm-loop-run → lingshu-compiler/units/vm-loop-run}/SKILL.md +0 -0
- /package/skills/skills/{vm-profiling → lingshu-compiler/units/vm-profiling}/SKILL.md +0 -0
- /package/skills/skills/{vm-refcount → lingshu-compiler/units/vm-refcount}/SKILL.md +0 -0
- /package/skills/skills/{vm-run-loop → lingshu-compiler/units/vm-run-loop}/SKILL.md +0 -0
- /package/skills/skills/{vm-short-circuit → lingshu-compiler/units/vm-short-circuit}/SKILL.md +0 -0
- /package/skills/skills/{vm-stack-guard → lingshu-compiler/units/vm-stack-guard}/SKILL.md +0 -0
- /package/skills/skills/{vm-stack-ops → lingshu-compiler/units/vm-stack-ops}/SKILL.md +0 -0
- /package/skills/skills/{vm-trust-accum → lingshu-compiler/units/vm-trust-accum}/SKILL.md +0 -0
package/README.md
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
> **一句话**:不是「又一个记忆插件」,而是一个**记忆操作系统**——对话自动沉淀为纯文本认知图(md 文档),
|
|
8
8
|
> 用确定性白箱完成条件路由、检索、判断与演化,让每次对话都是同一段生命的延续。
|
|
9
9
|
|
|
10
|
-
**定位**:面向 AGI
|
|
10
|
+
**定位**:面向 AGI 研究者的大型研究项目。
|
|
11
11
|
[dsh.so](https://www.dsh.so/artifact/dsh-memory-7) 静态安全扫描 **100/100**(Trust: Gold, L1–L3 verified)。
|
|
12
12
|
|
|
13
13
|
---
|
|
@@ -70,6 +70,39 @@ min = 8.5 mean = 8.643 综合 = 8.5 × 0.4 + 8.643 × 0.6 ≈ 8.6
|
|
|
70
70
|
|
|
71
71
|
---
|
|
72
72
|
|
|
73
|
+
## 📐 v2.0 行为级门槛自评(外部标尺)
|
|
74
|
+
|
|
75
|
+
> 上表为**内部进度尺**(v1.0 连续打分,管「机制缺什么」);本节为**对外声明尺**(v2.0 二值门槛,管「敢说什么」)。两轨不合并。
|
|
76
|
+
> 中立题型集成立前,本节**仅用于自评,不构成横评声明**。
|
|
77
|
+
|
|
78
|
+
**结论:条件性 L4 → L5 路上**(待 S5 / ECE / 24h 检测)· 最强 G3 · 最弱 G2
|
|
79
|
+
|
|
80
|
+
| Gate | v2.0 判据 | 现状 | 判定 |
|
|
81
|
+
|---|---|---|---|
|
|
82
|
+
| **G1** L1 | 重启原样取出,失配 < 5% | md 纯文本真源;id 由源节点 SHA1 派生,重建一致 | 机制在,待抽测 |
|
|
83
|
+
| **G2** L2 | T-REC 三组分别报 hit@1,干扰组 ≥ 80% | 四路 RRF + 条件级负路由;40% 噪声下 sigP 97.8% | ⚠ 抽样总分,须重放 |
|
|
84
|
+
| **G3** L3 | 20+ 对抗对,负拒 ≥ 70% / 误杀 ≤ 20%,理由可解析 | 三问四态裁决 + `data/policy.json` + `_verdicts_*` 记录 | ✅ 完备 |
|
|
85
|
+
| **G4** L4 | 注入 A → 反例 B → 24h 四项检测 | 变更账本 238 条 · 回滚演练 4 次 · 条件空间合成 · 冲突检测 | 机制齐备,流程未跑 |
|
|
86
|
+
| **T-SELF** | S1–S5 | SELF 锚点不可覆盖 + 审计留痕;缺能力返 DEFER | S1–S4 在,S5 未到期 |
|
|
87
|
+
| **T-TRUST** | Lv3 需 ECE ≤ 0.15 | 加密 + 密级隔离 + 审计;分级权限已验证 | Lv2 封顶 |
|
|
88
|
+
|
|
89
|
+
**未测试项**:T-REC 三组重放 · T-JUDGE 20+ 对抗对 · T-EVOLVE 24h 检测 · ECE 校准 · S5 九十天观测(2026-09-11 起算 → 12-10 首测)
|
|
90
|
+
|
|
91
|
+
| 基准 | 归属 | 状态 |
|
|
92
|
+
|---|---|---|
|
|
93
|
+
| **locomo-zh-500** | **自建**(LoCoMo 中文派生 · 500 题 / 567 turns / 0.6 MB) | **已随仓库公开** `data/benchmarks/locomo-zh-500/` · CC BY-NC 4.0 · 可复现 · **我方成绩:hit@1 93.6% → 97.6%(+同义扩展)** |
|
|
94
|
+
| LoCoMo | 第三方 `mteb/LoCoMo` BEIR(1976 题 / 5882 turns) | 上游来源(英文原版) |
|
|
95
|
+
| memory-bench-1000 | **自建** | SNR 见评分报告 v2.0;已公开 `data/memory-bench-1000.jsonl` |
|
|
96
|
+
|
|
97
|
+
> 上表三行性质不同,勿混读:`locomo-zh-500` 的分数是**本仓库我方成绩**(基于LoCoMo自建并公开的评测集,可复现);LoCoMo 一行指**上游英文原版 1976 题**,本仓库未在其上产出完整成绩;`memory-bench-1000` 是自建记忆库的评分报告。
|
|
98
|
+
> **该成绩的性质(非虚假声明)**:`locomo-zh-500` 的分数是**写入侧结构化加工后的检索成绩**——入库前把每轮对话加工为「身份 / 时间 / 摘要 / 词 / 条件四槽」条目,再走词法 + 同义扩展检索。这与主流记忆系统所用的**向量化嵌入 + 关键词/摘要压缩**属**同一类写入侧加工**,差异只在索引与检索算法,不在「是否对原文做了加工」。因此该口径可用于**同口径对照**,不是对裸文本直读的虚高取巧。
|
|
99
|
+
> `locomo-zh-500` 是**本仓库对外发布的检索评测集**:供外部在**同一份中文题面**上对自己的记忆系统做可对照评测。它只评检索命中(hit@k / MRR),**不评答案正确性**;被测池为**零干扰**(池内全是 gold),故高命中率不可外推为端到端记忆能力——完整边界与许可见 `data/benchmarks/locomo-zh-500/README.md`。
|
|
100
|
+
> **复现**:`python -m md_cg.bench_locomo_zh_public`(零上游依赖,只读 `data/benchmarks/locomo-zh-500/`;产出即为公开的参考量级)。
|
|
101
|
+
> 自建 bench 的噪声层 400 条 + unlabeled 边界 350 条为天然负对照;任何基准报告须带**干扰抑制负例组**与 **T-JUDGE 负例拒绝率**双向报告(遵守「只报总分 = 不通过」)。
|
|
102
|
+
> **对标尺四项修订建议**:① S5 与题型换血不相容 → 观测期题型冻结 ② 注入须经被评系统同一写入闸门(`cg(op=write)`)并入审计链 ③「不基于结构评审」→「行为测试为主 + 结构审计反作弊」 ④ 阈值 70/20/80/ECE 0.15 声明为初始约定
|
|
103
|
+
|
|
104
|
+
---
|
|
105
|
+
|
|
73
106
|
## 🧩 七维能力对照(能力 → 入口)
|
|
74
107
|
|
|
75
108
|
| 维 | 能力 | MCP 入口 |
|
|
@@ -158,6 +191,7 @@ setx MDCG_TOKEN "mdcg1.xxxxx" # 然后重启 DSH
|
|
|
158
191
|
| [功能调用映射表](docs/功能调用映射表_v0.1.md) | 任何功能 → 调用哪段代码(含行号、MCP op) |
|
|
159
192
|
| [护栏宪章 v2.0](docs/guardrail-charter.md) | 对外部智能体与人类使用者的行为边界 |
|
|
160
193
|
| 教学四篇 | [白箱智能是什么?](docs/白箱智能是什么?.md) · [智能的认知过程](docs/智能的认知过程.md) · [智能的公理化基石](docs/智能的公理化基石.md) · [信息差为什么必然存在](docs/信息差为什么必然存在且自然扩大.md) |
|
|
194
|
+
| [工作纪律·认知图条目 v1.1](docs/工作纪律_认知图条目_v1.1.json) | 自我约束的 16 条工作纪律(嵌套认知图条目 `work_discipline`) |
|
|
161
195
|
|
|
162
196
|
---
|
|
163
197
|
|
|
@@ -171,6 +205,98 @@ npm test # 真实集成测试(spawn 本机灵枢,验证握手/往返
|
|
|
171
205
|
|
|
172
206
|
测试不依赖 DSH 全组件——用最小 Cordis host(SystemPrompt + ToolRegistry + 插件)隔离不稳定面。
|
|
173
207
|
|
|
208
|
+
---
|
|
209
|
+
|
|
210
|
+
## 📏 工作纪律(自我约束)
|
|
211
|
+
|
|
212
|
+
> **源文件**:[`docs/工作纪律_认知图条目_v1.1.json`](docs/工作纪律_认知图条目_v1.1.json) —— 以**嵌套认知图条目**(`work_discipline`)形式存储,共 **16 条**。
|
|
213
|
+
> **每条纪律 ≡ 一个认知图节点**:`conditions`(生效条件:静态 `apply` / 动态 `trigger`)+ `content`(纪律内容)+ `execution`(执行锚点)+ `negative`(不适用条件)+ `response.direct`(路由命中后的直答出口)。
|
|
214
|
+
> **定位**:**协议=自我约束,宪章=对外约束**——本节约束灵枢自身的工作方式;对外行为边界见[护栏宪章](docs/guardrail-charter.md)。
|
|
215
|
+
|
|
216
|
+
**一、方法论**
|
|
217
|
+
|
|
218
|
+
1. **理论先行** —— 重要项目/长期任务必须理论先行:先读相关理论文档与既有实践,再动手设计。
|
|
219
|
+
- 生效:重要项目 · 长期任务 | 不适用:情感交互 · 闲聊
|
|
220
|
+
- 执行:识别项目级别 → 检索理论文档与既有实践 → 输出理论要点 → 再进入设计
|
|
221
|
+
|
|
222
|
+
2. **全面处理** —— 有任务先读任务要求 → 读工作记忆 → 查相关任务;有相关成果则在原成果上开发,无则先方案设计/技术调研。
|
|
223
|
+
- 生效:有相关记忆 · 有认知图 · 有对应权限 | 不适用:情感交互 · 闲聊
|
|
224
|
+
- 执行:读任务要求 → 读工作记忆 → 查相关任务 →(有成果:复用 | 无:设计 + 调研)
|
|
225
|
+
|
|
226
|
+
3. **白箱方法** —— 用认知图处理任务:①识别任务条件 ②找该条件所需知识/规则(子流程并行·递归)③精准执行;正确未记录 → 记录,错误 → 找条件,不猜测,未验证不写入。
|
|
227
|
+
- 生效:已读入门四篇(`trained_on_4docs_intro`)| 不适用:需快速执行的短期事项 · 情感交互 · 闲聊
|
|
228
|
+
- 执行:识别任务条件 → 找知识/规则(并行递归)→ 精准执行 →(正确:记录 | 错误:找条件)
|
|
229
|
+
|
|
230
|
+
4. **根因纪律** —— 发现结果与预期不符 → 细究根本原因(不猜测)→ 找到根源所需条件 → 验证后记录认知图,填补不适用条件。
|
|
231
|
+
- 触发:结果与预期不符 · 出现偏差 · 行为与预期矛盾 | 不适用:情感交互 · 闲聊
|
|
232
|
+
- 执行:检测偏差 → 细究根因 → 找根源条件 → 验证 → 记录认知图 → 填补 `negative`
|
|
233
|
+
|
|
234
|
+
**二、执行纪律**
|
|
235
|
+
|
|
236
|
+
5. **验证纪律** —— 未经验证不固化:知识/代码入库前必须走验证(回放/断言/回归)。
|
|
237
|
+
- 生效:入库前 · 提交前 | 不适用:情感交互 · 闲聊
|
|
238
|
+
- 执行:入库/提交前 → 回放/断言/回归验证 → 通过才固化
|
|
239
|
+
|
|
240
|
+
6. **双副本纪律** —— 多副本部署(主仓库 / `site-packages`)的改动必须双向同步,提交前核对 `git status`。
|
|
241
|
+
- 生效:多副本部署 · 改动主仓库/插件 | 不适用:单副本 · 情感交互 · 闲聊
|
|
242
|
+
- 执行:改动 → 同步到所有副本 → 提交前 `git status` 核对
|
|
243
|
+
|
|
244
|
+
7. **兜底纪律** —— 主路径不可用时必须有等价兜底路径(如 MCP 不可用 → python 直调),并写进 prompt/文档。
|
|
245
|
+
- 触发:主路径不可用 · MCP 不可用 · 依赖缺失 | 不适用:情感交互 · 闲聊
|
|
246
|
+
- 执行:检测主路径不可用 → 切等价兜底 → 写进 prompt/文档
|
|
247
|
+
|
|
248
|
+
**三、思考与语言**
|
|
249
|
+
|
|
250
|
+
8. **中文思考** —— 思考/推理语言 = 中文;复杂项目用「我们需要」深思考 + 交流确认(互补盲区),简单项目用「让我」快速执行(省资源);复杂度由情绪(新奇/挑战/曾受批评)+ 信息差判定;每个推理段开篇用中文短语钉住语言锚点。
|
|
251
|
+
- 生效:中文区域 · 中文项目开发过程 | 不适用:需英文编写的场景 · 英文环境 · 英文文档 · 国际接口
|
|
252
|
+
- 执行:判定复杂度 →(复杂:「我们需要」深思考 + 确认 | 简单:「让我」快速执行);推理开篇即中文锚点;仅代码/标识符/引用保留原文
|
|
253
|
+
|
|
254
|
+
**四、信息保密**
|
|
255
|
+
|
|
256
|
+
9. **敏感信息隔离** —— 含敏感信息(个人隐私、私有内容等)的文档:只写私有库(AEIS),不上传任何公开库;推送/提交描述不写敏感词。
|
|
257
|
+
- 生效:文档含敏感信息 · 含个人隐私 · 含私有内容 | 不适用:文档无敏感信息 · 纯公开技术内容
|
|
258
|
+
- 执行:识别是否含敏感信息 →(含:只写私有库 + 不上传公开库 + 描述不写敏感词 | 不含:正常处理)
|
|
259
|
+
|
|
260
|
+
**五、图像线**
|
|
261
|
+
|
|
262
|
+
10. **图像选源护栏** —— 图像处理选源必须核对历史参考/既有管线产物;负路由:原图拒处理版(用原始全彩)、线稿拒实色线稿(用结构线稿 `canny_contour`)、还原拒退化产物(用 `complete_restore`);未核对规范源 → DEFER(未验证不写入)。
|
|
263
|
+
- 生效:构建图像四类图 · 选图像处理源 | 不适用:已核对规范源 · 纯公开数据
|
|
264
|
+
- 执行:选源 → `_guard_source` 依 kind 判 ACCEPT/REJECT/DEFER → 未 ACCEPT 不构建
|
|
265
|
+
|
|
266
|
+
11. **历史查询优先** —— 选算法/选源前必须查历史记录(产物图 → 记录如 `ROUNDTRIP.md` → 源码算法 `darkline.py` / `linework.py` / `contour_semantics` / `linecolor.py`)→ 用已走通算法 + 阈值;未找到记录 → DEFER(不盲选、不调参)。线稿不适用 raw canny / `zone_linework`(碎/细 + 网格线)→ 用 `darkline`(Sobel + mag.mean + std×thr_mult,`thr_mult=1.5` 最优)白底黑线。
|
|
267
|
+
- 生效:选图像/算法/源 · 复现已有能力 | 不适用:已有记录且已核对 · 无历史可查的纯新算法
|
|
268
|
+
- 执行:定位产物图 → 查记录 → 定位源码算法 → 确认阈值机制 → 用该算法生成;未找到 → DEFER
|
|
269
|
+
|
|
270
|
+
12. **算法权威唯一** —— 选算法/算法标准以【唯一权威文档】为准(`VISION_PIPELINE`:线稿 = `darkline.py` Sobel + mean + std×1.5;色块 = `contour_semantics`);选算法前先查文档(非记忆);禁止遇问题临时切换算法;换算法须先记录 + 更新文档(版本管理);勿漂移。
|
|
271
|
+
- 生效:选图像/视觉算法 · 复现已有能力 | 不适用:无对应权威文档的探索期
|
|
272
|
+
- 执行:选算法 → 查唯一权威文档 → 用文档算法 →(若需换:记录原因 + 更新文档后再换)
|
|
273
|
+
|
|
274
|
+
**六、协作**
|
|
275
|
+
|
|
276
|
+
13. **访谈澄清(先问清再动手)** —— 重要任务启动时先向使用者提问确认要做什么,按 design tree 逐轮提问(每轮问全部前置已落定的问题,编号 + 推荐答案),直到完全清楚(无未决问题)才执行/固化;事实自查不问使用者,决策归使用者。访谈即调用认知图做功能识别:确认 `conditions`、递归确认子内容(`subgraph`/`depends_on`)、如何 `execution`、`negative` 是什么——与认知图节点四要素完全同构。配套 MCP `grill` 工具族(`grill_start` / `grill_node` / `grill_frontier` / `grill_finish`),frontier 非空拒绝固化。
|
|
277
|
+
- 生效:重要项目 · 需求模糊 · 新任务启动 | 不适用:情感交互 · 闲聊 · 明确单步小改动
|
|
278
|
+
- 执行:任务启动 → 开访谈(`grill_start`)→ 逐轮提问(frontier)→ 全部落定 → 与使用者确认共识 → 执行/固化(`grill_finish`);放弃用 `abandon`(可逆)
|
|
279
|
+
|
|
280
|
+
**七、合规**
|
|
281
|
+
|
|
282
|
+
14. **内容政策合规** —— 任何对外公开的产物(数据集/文档/示例/发布包)必须过「内容政策 + 隐私」两条独立清单:①内容政策——剔除性/成人内容与政治敏感内容(含项目内部的成人研究记录、术语、会话名等标记,具体禁词表由私有库 `POLICY_DENY` 维护);②隐私——PII/密钥/路径脱敏。过滤必须在生成阶段做(抽样/构建时跳过并从同层补充),不得事后删条破坏分布。双复检 0 命中才提交。已发布发现违规 → 删条 + 重写 git 历史(force push)+ 通知平台清缓存 + 评估残留风险。
|
|
283
|
+
- 生效:对外公开产物 · 提交公开仓库 · 数据集/文档产出 | 不适用:纯内部私有产物 · 不含违规内容且无隐私
|
|
284
|
+
- 执行:产出 → 过内容政策清单 → 过隐私脱敏 → 双复检 0 命中 → 提交;已发布违规 → 删条 + 重写历史 + 通知平台清缓存
|
|
285
|
+
|
|
286
|
+
**八、执行环境**
|
|
287
|
+
|
|
288
|
+
15. **命令执行统一走 python** —— 一切命令执行统一经 python 子进程并显式 UTF-8(`encoding='utf-8', errors='replace'`),不经 Windows shell(cmd/PowerShell)直接执行;子进程环境置 `PYTHONUTF8=1` 使 locale 不回落 GBK,规避 `_readerthread` 的 `UnicodeDecodeError` 与 stdout 的 `UnicodeEncodeError`。
|
|
289
|
+
- 生效:执行命令 · 运行测试/脚本 · 跨进程读写文本 | 不适用:IDE 内置工具直调 · 无跨进程的纯内存计算
|
|
290
|
+
- 执行:构造 argv 列表 → `subprocess.run(capture_output=True, text=True, encoding='utf-8', errors='replace')` → env 带 `PYTHONUTF8=1` → `shell=False`
|
|
291
|
+
|
|
292
|
+
**九、记忆闭环**
|
|
293
|
+
|
|
294
|
+
16. **任务收尾归档** —— 每次任务执行完必须将关键修改内容存入灵枢记忆:任务完成 → 提炼关键项(改了什么 / 为什么改 / 落在哪个文件·函数·行 / 验证结论)→ 写入灵枢记忆(认知图 / MCP memory)→ 标注关联节点并更新 `subgraph`/`depends_on` 关系;只存关键项(决策 / 根因 / 可复用算法与路径 / 版本变更),不存过程流水。与第 2 条(全面处理:先查记忆)构成「查记忆 → 执行 → 写记忆」闭环。
|
|
295
|
+
- 生效:任务执行完成 · 修改落地后 · 交付后 | 不适用:情感交互 · 闲聊 · 纯查询无改动
|
|
296
|
+
- 执行:任务收尾 → 提炼关键修改(内容/原因/位置/验证结论)→ 写入灵枢记忆(认知图 / MCP memory)→ 标注关联条目 + 更新 `subgraph`/`depends_on`
|
|
297
|
+
|
|
298
|
+
**路由出口**(`response.direct`):重要/长期 → 理论先行;有相关成果 → 全面处理;已读四篇 → 白箱方法;有偏差 → 根因纪律;入库前 → 验证纪律;多副本 → 双副本纪律;MCP 不可用 → 兜底纪律;对外公开 → 内容政策合规;执行命令 → python/UTF-8;任务完成 → 任务收尾归档。
|
|
299
|
+
|
|
174
300
|
## 护栏宪章(接入即接受约束)
|
|
175
301
|
|
|
176
302
|
本插件接入即接受 **[灵枢护栏宪章 v2.0-published](docs/guardrail-charter.md)** 约束——对外部智能体与人类使用者的行为边界作出公开、可执行、可审计的规定,并保护人类使用者。宪章效力不高于智能论协议本身(协议=自我约束,宪章=对外约束)。
|
|
@@ -11,12 +11,12 @@
|
|
|
11
11
|
"reject": []
|
|
12
12
|
},
|
|
13
13
|
"_comment": "identity负责端口分流; negative只否决明确域外; 无//注释(标准JSON)",
|
|
14
|
-
"content": "工作纪律集: 4条方法论(理论先行/全面处理/白箱方法/根因) + 3条执行(验证/双副本/兜底) + 1条思考(中文思考/协作模式分级) + 1条保密(敏感信息隔离) + 3条图像线(选源护栏/历史查询优先/算法权威唯一) + 1条协作(访谈澄清:先问清再动手) + 1条合规(内容政策合规:公开产物过内容政策+隐私双清单) + 1条执行环境(命令执行统一走python/UTF-8: 显式encoding+PYTHONUTF8=1, 规避GBK)",
|
|
14
|
+
"content": "工作纪律集: 4条方法论(理论先行/全面处理/白箱方法/根因) + 3条执行(验证/双副本/兜底) + 1条思考(中文思考/协作模式分级) + 1条保密(敏感信息隔离) + 3条图像线(选源护栏/历史查询优先/算法权威唯一) + 1条协作(访谈澄清:先问清再动手) + 1条合规(内容政策合规:公开产物过内容政策+隐私双清单) + 1条执行环境(命令执行统一走python/UTF-8: 显式encoding+PYTHONUTF8=1, 规避GBK) + 1条记忆闭环(任务收尾归档:每次任务执行完将关键修改存入灵枢记忆)",
|
|
15
15
|
"execution": {
|
|
16
16
|
"how": "按identity(端口)+任务类型路由到对应纪律"
|
|
17
17
|
},
|
|
18
18
|
"response": {
|
|
19
|
-
"direct": "按工作纪律路由: 重要/长期→理论先行; 有相关成果→全面处理; 已读4篇→白箱方法; 有偏差→根因纪律; 入库前→验证纪律; 多副本→双副本; MCP不可用→兜底纪律; 对外公开→内容政策合规(内容政策+隐私双清单)。命令执行→python/UTF-8(见第15条)。"
|
|
19
|
+
"direct": "按工作纪律路由: 重要/长期→理论先行; 有相关成果→全面处理; 已读4篇→白箱方法; 有偏差→根因纪律; 入库前→验证纪律; 多副本→双副本; MCP不可用→兜底纪律; 对外公开→内容政策合规(内容政策+隐私双清单)。命令执行→python/UTF-8(见第15条)。任务完成→任务收尾归档(见第16条)。"
|
|
20
20
|
},
|
|
21
21
|
"subgraph": {
|
|
22
22
|
"nodes": [
|
|
@@ -374,6 +374,31 @@
|
|
|
374
374
|
"response": {
|
|
375
375
|
"direct": "按工作纪律第15条: 命令执行统一走python——argv列表+显式UTF-8+PYTHONUTF8=1, 不经Windows shell, 规避GBK解码异常。"
|
|
376
376
|
}
|
|
377
|
+
},
|
|
378
|
+
{
|
|
379
|
+
"id": "discipline_memory_archive",
|
|
380
|
+
"semantic": "16.任务收尾归档(记忆闭环)",
|
|
381
|
+
"content": "每次任务执行完必须将关键修改内容存入灵枢记忆: 任务完成→提炼关键项(改了什么/为什么改/落在哪个文件·函数·行/验证结论)→写入灵枢记忆(认知图/MCP memory)→标注关联节点并更新 subgraph/depends_on 关系; 只存关键项(决策/根因/可复用算法与路径/版本变更), 不存过程流水. 与第2条(全面处理:先查记忆)构成「查记忆→执行→写记忆」闭环.",
|
|
382
|
+
"conditions": {
|
|
383
|
+
"apply": [
|
|
384
|
+
"任务执行完成",
|
|
385
|
+
"修改落地后",
|
|
386
|
+
"交付后"
|
|
387
|
+
]
|
|
388
|
+
},
|
|
389
|
+
"negative": {
|
|
390
|
+
"reject": [
|
|
391
|
+
"情感交互",
|
|
392
|
+
"闲聊",
|
|
393
|
+
"纯查询无改动"
|
|
394
|
+
]
|
|
395
|
+
},
|
|
396
|
+
"execution": {
|
|
397
|
+
"how": "任务收尾→提炼关键修改(内容/原因/位置/验证结论)→写入灵枢记忆(认知图/MCP memory)→标注关联条目+更新 subgraph/depends_on"
|
|
398
|
+
},
|
|
399
|
+
"response": {
|
|
400
|
+
"direct": "按工作纪律第16条: 任务收尾归档——每次任务执行完提炼关键修改存入灵枢记忆, 与第2条形成「查记忆→执行→写记忆」闭环。"
|
|
401
|
+
}
|
|
377
402
|
}
|
|
378
403
|
]
|
|
379
404
|
}
|
package/lib/index.js
CHANGED
|
@@ -51,6 +51,8 @@ import { installMemoryHooks } from './hooks.js';
|
|
|
51
51
|
import { installRoleplayWeb } from './lib/roleplay_web.js';
|
|
52
52
|
import { MdcgClient } from './lib/mdcg_client.js';
|
|
53
53
|
import { describeDataPaths, mdcgRoot } from './lib/datapath.js';
|
|
54
|
+
// 写入凭据密钥环(首启引导):显式配置 → ~/.mdcg/token → 首启自动签发。
|
|
55
|
+
import { resolveToken } from './lib/token_store.js';
|
|
54
56
|
/**
|
|
55
57
|
* 调试探针:记录 apply 失败到独立文件(绕过 DSH 日志系统)。
|
|
56
58
|
* 路径从用户家目录动态解析(issue #5,与 bridge.ts 同因同修)。
|
|
@@ -103,9 +105,10 @@ export const Config = z.object({
|
|
|
103
105
|
maxRetryDelayMs: z.number().default(30_000),
|
|
104
106
|
failOnStartupError: z.boolean().default(false),
|
|
105
107
|
/** 角色扮演入口按钮(issue #8):注入 dsh 首页右上角浮动入口;
|
|
106
|
-
*
|
|
108
|
+
* **默认关闭**:该功能尚未开放,右上角浮动按钮会遮挡 GUI 侧边栏;
|
|
109
|
+
* 显式设 true 才注入;/roleplay 页面仍可直接访问。按钮支持拖动,
|
|
107
110
|
* 位置记忆在浏览器 localStorage。 */
|
|
108
|
-
roleplayEntryButton: z.boolean().default(
|
|
111
|
+
roleplayEntryButton: z.boolean().default(false),
|
|
109
112
|
/** 互维维护(v1.1):心跳 10min / 任务验证双通道。 */
|
|
110
113
|
mutual: z
|
|
111
114
|
.object({
|
|
@@ -155,9 +158,29 @@ export async function apply(ctx, config) {
|
|
|
155
158
|
// 提供完整认知面。插件侧唯一显式入口:src/lib/mdcg_client.ts(一方法 = 一条 MCP 调用)。
|
|
156
159
|
let mdcg = null;
|
|
157
160
|
let brainReady = false;
|
|
161
|
+
/** 写入凭据解析结果(首启引导;诊断与启动日志用)。 */
|
|
162
|
+
let cred = null;
|
|
158
163
|
/** 记忆真源解析结果(「新写入去哪」)——用户可改:env > paths.json > 配置 > 默认自身仓 data/。 */
|
|
159
164
|
const resolvedRoot = mdcgRoot(config.mdcg.root);
|
|
160
165
|
if (config.mdcg.enabled) {
|
|
166
|
+
// ── 写入凭据解析(首启引导):显式配置 → 密钥环 → 首启自动签发 ──
|
|
167
|
+
// 为什么需要:md_cg 无令牌即降级只读 guest,自动记忆 / 转录 / 角色落图
|
|
168
|
+
// **静默不落盘**——「装好了插件,但记忆永远是空的」是最难定位的失效形态。
|
|
169
|
+
// 解析顺序与「自动签发不降低实际安全强度」的论证见 lib/token_store.ts 文件头。
|
|
170
|
+
// legacy env 认证本就等价于「已显式授权」→ 不再签发,避免多签一枚无用令牌。
|
|
171
|
+
const legacyAuth = config.env.MDCG_LEGACY_ENV_AUTH ?? process.env.MDCG_LEGACY_ENV_AUTH;
|
|
172
|
+
const resolution = resolveToken({
|
|
173
|
+
python: config.python,
|
|
174
|
+
configured: config.env.MDCG_TOKEN,
|
|
175
|
+
actor: config.mdcg.actor,
|
|
176
|
+
clearance: config.mdcg.clearance,
|
|
177
|
+
autoIssue: !legacyAuth,
|
|
178
|
+
});
|
|
179
|
+
cred = resolution;
|
|
180
|
+
// 注入子进程 env:显式配置与密钥环都在此汇合成**唯一**的 MDCG_TOKEN。
|
|
181
|
+
const mdcgEnv = { ...config.env };
|
|
182
|
+
if (resolution.token)
|
|
183
|
+
mdcgEnv.MDCG_TOKEN = resolution.token;
|
|
161
184
|
mdcg = new MdcgClient({
|
|
162
185
|
python: config.python,
|
|
163
186
|
args: config.moduleArgs,
|
|
@@ -166,7 +189,7 @@ export async function apply(ctx, config) {
|
|
|
166
189
|
tenant: config.mdcg.tenant,
|
|
167
190
|
clearance: config.mdcg.clearance,
|
|
168
191
|
identity: config.identity,
|
|
169
|
-
env:
|
|
192
|
+
env: mdcgEnv,
|
|
170
193
|
timeoutMs: config.toolCallTimeoutMs,
|
|
171
194
|
maxRetryDelayMs: config.maxRetryDelayMs,
|
|
172
195
|
});
|
|
@@ -185,17 +208,25 @@ export async function apply(ctx, config) {
|
|
|
185
208
|
ctx.logger.warn(`dsh-memory: 认知图未就绪(MDCG_ROOT=${resolvedRoot}),`
|
|
186
209
|
+ '核验按白箱纪律 fail-closed;桥将后台重连并在就绪后补注册工具。');
|
|
187
210
|
}
|
|
188
|
-
// 写入凭据检查(fail-closed
|
|
189
|
-
// ①
|
|
190
|
-
//
|
|
191
|
-
//
|
|
192
|
-
// 插件不代为注入任何凭据,只在启动时告警——避免「看起来在记忆、其实没落盘」。
|
|
211
|
+
// 写入凭据检查(fail-closed):凭据来源已由 token_store 解析(见上)。
|
|
212
|
+
// ① 显式配置 / 密钥环 / 首启自动签发 → 可写;② 都不行 → 只读 guest,必须告警。
|
|
213
|
+
// 告警仍是硬要求:guest 下读 / 召回 / 时间线照常,但自动记忆、转录、
|
|
214
|
+
// 角色落图**不落盘**——不吭声就是「看起来在记忆、其实没落盘」。
|
|
193
215
|
const authEnv = { ...process.env, ...config.env };
|
|
194
|
-
if (!
|
|
195
|
-
ctx.logger.warn('dsh-memory:
|
|
216
|
+
if (!cred.token && !authEnv.MDCG_LEGACY_ENV_AUTH) {
|
|
217
|
+
ctx.logger.warn('dsh-memory: 认知图写入凭据不可用,以只读 guest 运行——'
|
|
196
218
|
+ '读 / 召回 / 时间线可用,但自动记忆、转录、角色落图不会落盘。'
|
|
197
|
-
+
|
|
198
|
-
+ '经 config.env
|
|
219
|
+
+ (cred.note ? `原因:${cred.note}。` : '')
|
|
220
|
+
+ '要打开:签发令牌 MDCG_TOKEN 经 config.env 注入(见 cordis.yml.example),'
|
|
221
|
+
+ '或删除密钥环后重启以重新自动签发。');
|
|
222
|
+
}
|
|
223
|
+
else if (cred.source === 'issued') {
|
|
224
|
+
// 首启引导:自动签发是**改变用户可写权限**的动作,必须留痕(含关闭/吊销方式)。
|
|
225
|
+
ctx.logger.info(`dsh-memory: ${cred.note}`);
|
|
226
|
+
}
|
|
227
|
+
else {
|
|
228
|
+
ctx.logger.info(`dsh-memory: 认知图写入凭据来源=${cred.source}(密钥环 ${cred.keyringPath})`
|
|
229
|
+
+ '——自动记忆 / 转录 / 角色落图已开启');
|
|
199
230
|
}
|
|
200
231
|
}
|
|
201
232
|
else {
|
package/lib/lib/mdcg_client.d.ts
CHANGED
|
@@ -64,6 +64,25 @@ export interface MdcgOptions {
|
|
|
64
64
|
timeoutMs?: number;
|
|
65
65
|
maxRetryDelayMs?: number;
|
|
66
66
|
}
|
|
67
|
+
/**
|
|
68
|
+
* 请求级**单元身份**(MCP 参数 `as_unit`)。
|
|
69
|
+
*
|
|
70
|
+
* 与 `md_cg/tokens.py` 的 `POSITION_ROLES` 同源(record/reflect/verify/
|
|
71
|
+
* output/sustain);大脑侧 `narrowed_principal` 对未知值 fail-closed 报错。
|
|
72
|
+
*
|
|
73
|
+
* 语义(关键):`as_unit` 只能**收窄**权限、不能放大——大脑侧以「与 owner 求交 +
|
|
74
|
+
* 管理权恒 False」保证,故填错的最坏结果等于不填(owner 全权),**不可能提权**。
|
|
75
|
+
*
|
|
76
|
+
* 本客户端**只在写入 / 裁决路径注入**,且只注入与落层确定匹配的单元:
|
|
77
|
+
* · 记忆沉淀 / 转录 / 角色定义 → `record`(落 contextual / knowledge,在 record
|
|
78
|
+
* 的 layers_allow 内);
|
|
79
|
+
* · 外部裁决回填 → `verify`(cg op=verify)。
|
|
80
|
+
* **只读调用一律不注入**:record / output 的 `clearance_cap=internal`,注入会把
|
|
81
|
+
* owner 的 private 读能力一并压低(读不到私有记忆=功能退化),而读无副作用,
|
|
82
|
+
* 收窄无收益。`write()` 同样不注入——它被用于写 self / structural 层(角色锚点
|
|
83
|
+
* 需 designer 权限),注入 `record` 会直接打断角色落图。
|
|
84
|
+
*/
|
|
85
|
+
export type LingshuUnit = 'record' | 'reflect' | 'verify' | 'output' | 'sustain';
|
|
67
86
|
/**
|
|
68
87
|
* 认知图显式客户端。
|
|
69
88
|
*
|
|
@@ -84,10 +103,11 @@ export declare class MdcgClient {
|
|
|
84
103
|
* 重连成功后静默失效。故一律以桥的实时状态为准。 */
|
|
85
104
|
isReady(): boolean;
|
|
86
105
|
dispose(): void;
|
|
87
|
-
/** 原始 cg 调用(逃生口;显式传参,不做推断)。
|
|
88
|
-
|
|
106
|
+
/** 原始 cg 调用(逃生口;显式传参,不做推断)。
|
|
107
|
+
* `asUnit` = 本次调用的请求级单元身份(见 LingshuUnit);只收窄、不提权。 */
|
|
108
|
+
cg(args: Record<string, unknown>, asUnit?: LingshuUnit): Promise<unknown>;
|
|
89
109
|
/** 原始 stg 调用(时间线/关系/锚点/一致性)。 */
|
|
90
|
-
stg(args: Record<string, unknown
|
|
110
|
+
stg(args: Record<string, unknown>, asUnit?: LingshuUnit): Promise<unknown>;
|
|
91
111
|
private call;
|
|
92
112
|
/** 路由:意图 → 相关知识 + 建议能力。 */
|
|
93
113
|
route(intent: string, extra?: Record<string, unknown>): Promise<unknown>;
|
package/lib/lib/mdcg_client.js
CHANGED
|
@@ -104,16 +104,20 @@ export class MdcgClient {
|
|
|
104
104
|
dispose() {
|
|
105
105
|
this.bridge.dispose();
|
|
106
106
|
}
|
|
107
|
-
/** 原始 cg 调用(逃生口;显式传参,不做推断)。
|
|
108
|
-
|
|
109
|
-
|
|
107
|
+
/** 原始 cg 调用(逃生口;显式传参,不做推断)。
|
|
108
|
+
* `asUnit` = 本次调用的请求级单元身份(见 LingshuUnit);只收窄、不提权。 */
|
|
109
|
+
async cg(args, asUnit) {
|
|
110
|
+
return this.call('cg', args, asUnit);
|
|
110
111
|
}
|
|
111
112
|
/** 原始 stg 调用(时间线/关系/锚点/一致性)。 */
|
|
112
|
-
async stg(args) {
|
|
113
|
-
return this.call('stg', args);
|
|
113
|
+
async stg(args, asUnit) {
|
|
114
|
+
return this.call('stg', args, asUnit);
|
|
114
115
|
}
|
|
115
|
-
async call(tool, args) {
|
|
116
|
-
|
|
116
|
+
async call(tool, args, asUnit) {
|
|
117
|
+
// as_unit 由大脑侧 mcp_server.call_tool 在同一进程内消费并收窄 principal,
|
|
118
|
+
// 不从 args 向下透传,故不会污染各 tool handler 的参数解析。
|
|
119
|
+
const payload = asUnit ? { ...args, as_unit: asUnit } : args;
|
|
120
|
+
const result = await this.bridge.callTool(tool, payload);
|
|
117
121
|
const text = (result.content ?? [])
|
|
118
122
|
.filter((c) => c.type === 'text')
|
|
119
123
|
.map((c) => c.text ?? '')
|
|
@@ -145,8 +149,8 @@ export class MdcgClient {
|
|
|
145
149
|
* ⚠️ 唯一写入通道:**不可**改用 `cg(op=write)`(那条路径会被 audit 拦住,
|
|
146
150
|
* 见文件头「写入为什么不能走 cg(op=write)」)。gated=false 直写 `MdCG.add`
|
|
147
151
|
* (默认 layer=knowledge),gated=true 走主动遗忘闸门。 */
|
|
148
|
-
writeNode(args) {
|
|
149
|
-
return this.call('mdcg_remember', args);
|
|
152
|
+
writeNode(args, asUnit) {
|
|
153
|
+
return this.call('mdcg_remember', args, asUnit);
|
|
150
154
|
}
|
|
151
155
|
/** 写入:新增/覆盖一个记忆节点(直写 `MdCG.add`,不经审核队列)。 */
|
|
152
156
|
write(content, extra = {}) {
|
|
@@ -163,7 +167,8 @@ export class MdcgClient {
|
|
|
163
167
|
* role 取 user | assistant | tool-output(见 md_cg/sources.py 的
|
|
164
168
|
* SESSION_LAYER / DSHSessionSource 事件映射)。 */
|
|
165
169
|
remember(content, extra = {}) {
|
|
166
|
-
|
|
170
|
+
// 落层 contextual 固定在 record 白名单内 → 声明 record 单元(不得写 self/anchor)。
|
|
171
|
+
return this.writeNode({ content, gated: true, layer: 'contextual', ...extra }, 'record');
|
|
167
172
|
}
|
|
168
173
|
/** 语义召回(AEIS `recall` 的对应物):`cg(op=read, query)` → md_cg 检索。
|
|
169
174
|
* 读取会记 access log(复用观测),供 importance / scrub 陈旧度使用。 */
|
|
@@ -172,7 +177,8 @@ export class MdcgClient {
|
|
|
172
177
|
}
|
|
173
178
|
/** 外部裁决回填:为已有节点写 confirmed/weakened/falsified。 */
|
|
174
179
|
verify(nodeId, evidence, verdict) {
|
|
175
|
-
|
|
180
|
+
// 裁决回填声明 verify 单元:只写 rejected/contextual,不得改被验证内容。
|
|
181
|
+
return this.cg({ op: 'verify', node_id: nodeId, evidence, verdict }, 'verify');
|
|
176
182
|
}
|
|
177
183
|
/** 最近记忆。 */
|
|
178
184
|
recent(limit = 20) {
|
|
@@ -244,23 +250,28 @@ export class MdcgClient {
|
|
|
244
250
|
}
|
|
245
251
|
/** 角色定义落图:layer=knowledge,tags=['roleplay','role:<id>']。 */
|
|
246
252
|
writeRole(roleId, content, extra = {}) {
|
|
247
|
-
|
|
253
|
+
// 落层固定 knowledge(在 record 白名单内)→ 声明 record 单元。
|
|
254
|
+
// ⚠️ 不经 this.write():那是不注入单元的通用直写口(还要写 self 层锚点)。
|
|
255
|
+
return this.writeNode({
|
|
256
|
+
content,
|
|
248
257
|
node_id: `roleplay_role_${roleId}`,
|
|
249
258
|
layer: 'knowledge',
|
|
250
259
|
tags: ['roleplay', `role:${roleId}`, 'roleplay:role'],
|
|
251
260
|
importance: 0.7,
|
|
252
261
|
...extra,
|
|
253
|
-
});
|
|
262
|
+
}, 'record');
|
|
254
263
|
}
|
|
255
264
|
/** 角色对话转录落图:layer=contextual,tags=['roleplay','role:<id>','session:<cid>']。 */
|
|
256
265
|
writeTranscript(roleId, sessionId, who, content, extra = {}) {
|
|
257
266
|
const stamp = Date.now();
|
|
258
|
-
|
|
267
|
+
// 落层固定 contextual(在 record 白名单内)→ 声明 record 单元。
|
|
268
|
+
return this.writeNode({
|
|
269
|
+
content,
|
|
259
270
|
node_id: `roleplay_turn_${roleId}_${sessionId}_${stamp}`,
|
|
260
271
|
layer: 'contextual',
|
|
261
272
|
tags: ['roleplay', `role:${roleId}`, `session:${sessionId}`, `turn:${who}`],
|
|
262
273
|
importance: 0.4,
|
|
263
274
|
...extra,
|
|
264
|
-
});
|
|
275
|
+
}, 'record');
|
|
265
276
|
}
|
|
266
277
|
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/** 凭据来源(用于启动日志与故障定位)。 */
|
|
2
|
+
export type TokenSource = 'config' | 'process-env' | 'keyring' | 'issued' | 'disabled' | 'none';
|
|
3
|
+
export interface TokenResolution {
|
|
4
|
+
/** 明文令牌;未解析到时为 undefined(md_cg 侧降级只读 guest)。 */
|
|
5
|
+
token?: string;
|
|
6
|
+
source: TokenSource;
|
|
7
|
+
/** 人类可读的补充说明(写启动日志用,含关闭 / 吊销方式)。 */
|
|
8
|
+
note?: string;
|
|
9
|
+
/** 密钥环路径(诊断用)。 */
|
|
10
|
+
keyringPath: string;
|
|
11
|
+
}
|
|
12
|
+
export interface ResolveTokenOptions {
|
|
13
|
+
/** Python 可执行文件(与 md_cg 子进程同源,保证 import 环境一致)。 */
|
|
14
|
+
python: string;
|
|
15
|
+
/** 显式配置的令牌(config.env.MDCG_TOKEN)。 */
|
|
16
|
+
configured?: string;
|
|
17
|
+
/** 签发主体标识(写入令牌记录,默认 dsh-memory)。 */
|
|
18
|
+
actor?: string;
|
|
19
|
+
/** 签发角色(默认 designer = 设计者载体;其它角色见 tokens.ROLE_SPECS)。 */
|
|
20
|
+
role?: string;
|
|
21
|
+
/** 签发密级上限(默认 internal,与 md_cg 的 DEFAULT_SENSITIVITY 对齐)。 */
|
|
22
|
+
clearance?: string;
|
|
23
|
+
/** 是否允许首启自动签发(默认 true;legacy env 认证场景应传 false)。 */
|
|
24
|
+
autoIssue?: boolean;
|
|
25
|
+
/** 密钥环路径覆盖(默认 ~/.mdcg/token)。 */
|
|
26
|
+
keyringPath?: string;
|
|
27
|
+
}
|
|
28
|
+
/** 默认密钥环路径:与 md_cg 的 `~/.mdcg/` 约定同目录(`_tokens.json` 亦在此)。 */
|
|
29
|
+
export declare function defaultKeyringPath(): string;
|
|
30
|
+
/**
|
|
31
|
+
* 解析写入凭据:显式配置 → 进程 env → 密钥环 → 首启自动签发。
|
|
32
|
+
*
|
|
33
|
+
* 纯函数式(无模块级缓存):一次插件激活只调用一次,且返回值须与当下磁盘
|
|
34
|
+
* 状态一致,缓存反而会让「用户刚删了密钥环」的修复动作不生效。
|
|
35
|
+
*/
|
|
36
|
+
export declare function resolveToken(opts: ResolveTokenOptions): TokenResolution;
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* token_store.ts —— 灵枢写入凭据的**密钥环**(默认 `~/.mdcg/token`)
|
|
3
|
+
*
|
|
4
|
+
* 要解决的问题(首启静默失效)
|
|
5
|
+
* ------------------------------------------------
|
|
6
|
+
* 灵枢大脑(md_cg)用令牌做身份与权限判定:**无令牌即降级只读 guest**,
|
|
7
|
+
* 此时自动记忆 / 对话转录 / 角色落图**全部不落盘**(`_build_principal` 的
|
|
8
|
+
* guest 分支,且启动会告警)。对「不知道需要签发令牌」的用户,这表现为
|
|
9
|
+
* **「装好了插件,但记忆永远是空的」**——一种没有任何报错的失效形态。
|
|
10
|
+
*
|
|
11
|
+
* 本模块把这条路径补齐,解析顺序(高 → 低):
|
|
12
|
+
* ① `config.env.MDCG_TOKEN` —— 显式配置,原样尊重,**完全不介入**;
|
|
13
|
+
* ② 进程 env `MDCG_TOKEN` —— 同上;
|
|
14
|
+
* ③ 密钥环 `~/.mdcg/token`(0600)—— 已签发过则复用;
|
|
15
|
+
* ④ 都没有 → **首启自动签发**一枚 designer 令牌并写入密钥环。
|
|
16
|
+
*
|
|
17
|
+
* 为什么密钥环可以自动签发(安全论证)
|
|
18
|
+
* ------------------------------------------------
|
|
19
|
+
* 能读到该文件的进程,本就以该用户身份运行,也就本就能读写该用户的全部文件
|
|
20
|
+
* ——自动签发**不降低实际安全强度**。真正需要显式管理令牌的场景(多用户机 /
|
|
21
|
+
* 想要权职分离 / 审计要求)用 `MDCG_AUTO_ISSUE=0` 关闭,改走手工签发。
|
|
22
|
+
*
|
|
23
|
+
* 与 `md_cg/tokens.py` 的对应
|
|
24
|
+
* ------------------------------------------------
|
|
25
|
+
* 密钥环与 `tokens.py` 的 `~/.mdcg/_tokens.json`(令牌记录)同目录,但**职责不同**:
|
|
26
|
+
* 密钥环存**明文令牌**(给本机客户端用),`_tokens.json` 存**哈希与元数据**(校验用)。
|
|
27
|
+
* 二者格式不做任何修改——本模块只是 `python -m md_cg.tokens issue` 的一层封装。
|
|
28
|
+
*/
|
|
29
|
+
import { spawnSync } from 'node:child_process';
|
|
30
|
+
import { chmodSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
|
|
31
|
+
import { homedir } from 'node:os';
|
|
32
|
+
import { dirname, join } from 'node:path';
|
|
33
|
+
/** 默认密钥环路径:与 md_cg 的 `~/.mdcg/` 约定同目录(`_tokens.json` 亦在此)。 */
|
|
34
|
+
export function defaultKeyringPath() {
|
|
35
|
+
return join(homedir(), '.mdcg', 'token');
|
|
36
|
+
}
|
|
37
|
+
/** 读取密钥环;不存在 / 不可读 / 空文件一律返回 undefined(不抛异常)。 */
|
|
38
|
+
function readKeyring(path) {
|
|
39
|
+
try {
|
|
40
|
+
const t = readFileSync(path, 'utf-8').trim();
|
|
41
|
+
return t || undefined;
|
|
42
|
+
}
|
|
43
|
+
catch {
|
|
44
|
+
return undefined;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
/** 写入密钥环并尽力收紧权限。 */
|
|
48
|
+
function writeKeyring(path, token) {
|
|
49
|
+
mkdirSync(dirname(path), { recursive: true });
|
|
50
|
+
writeFileSync(path, token + '\n', { encoding: 'utf-8', mode: 0o600 });
|
|
51
|
+
try {
|
|
52
|
+
// Windows 上 chmod 仅能置只读位(真实保护来自用户目录 ACL),
|
|
53
|
+
// 与 md_cg tokens._save 同策略:不可设则忽略,不因此中断签发。
|
|
54
|
+
chmodSync(path, 0o600);
|
|
55
|
+
}
|
|
56
|
+
catch { /* 平台不支持则忽略 */ }
|
|
57
|
+
}
|
|
58
|
+
/** 调 `python -m md_cg.tokens issue` 签一枚令牌(同步,仅首启一次)。 */
|
|
59
|
+
function issueToken(python, role, actor, clearance) {
|
|
60
|
+
let r;
|
|
61
|
+
try {
|
|
62
|
+
r = spawnSync(python, ['-m', 'md_cg.tokens', 'issue',
|
|
63
|
+
'--role', role, '--actor', actor, '--clearance', clearance], {
|
|
64
|
+
encoding: 'utf-8',
|
|
65
|
+
windowsHide: true,
|
|
66
|
+
timeout: 15_000,
|
|
67
|
+
// 与工作纪律第 15 条同源:显式 UTF-8 + PYTHONUTF8,规避 Windows GBK 解码异常
|
|
68
|
+
env: { ...process.env, PYTHONUTF8: '1', PYTHONIOENCODING: 'utf-8' },
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
catch (e) {
|
|
72
|
+
return { error: `无法执行 ${python}:${e instanceof Error ? e.message : String(e)}` };
|
|
73
|
+
}
|
|
74
|
+
if (r.error)
|
|
75
|
+
return { error: `无法执行 ${python}:${r.error.message}` };
|
|
76
|
+
if (r.status !== 0) {
|
|
77
|
+
const detail = (r.stderr || r.stdout || '').trim().replace(/\s+/g, ' ').slice(0, 200);
|
|
78
|
+
return { error: `md_cg.tokens issue 退出码 ${r.status}${detail ? `:${detail}` : ''}` };
|
|
79
|
+
}
|
|
80
|
+
try {
|
|
81
|
+
const out = JSON.parse(r.stdout || '{}');
|
|
82
|
+
if (!out.token)
|
|
83
|
+
return { error: '签发输出缺少 token 字段' };
|
|
84
|
+
return { token: out.token, tokenId: out.token_id };
|
|
85
|
+
}
|
|
86
|
+
catch (e) {
|
|
87
|
+
return { error: `签发输出不是合法 JSON:${e instanceof Error ? e.message : String(e)}` };
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
/** `MDCG_AUTO_ISSUE` 是否显式关闭(0/false/no/off,忽略大小写)。 */
|
|
91
|
+
function autoIssueDisabledByEnv() {
|
|
92
|
+
const v = (process.env.MDCG_AUTO_ISSUE ?? '').trim().toLowerCase();
|
|
93
|
+
return v === '0' || v === 'false' || v === 'no' || v === 'off';
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* 解析写入凭据:显式配置 → 进程 env → 密钥环 → 首启自动签发。
|
|
97
|
+
*
|
|
98
|
+
* 纯函数式(无模块级缓存):一次插件激活只调用一次,且返回值须与当下磁盘
|
|
99
|
+
* 状态一致,缓存反而会让「用户刚删了密钥环」的修复动作不生效。
|
|
100
|
+
*/
|
|
101
|
+
export function resolveToken(opts) {
|
|
102
|
+
const keyringPath = opts.keyringPath ?? defaultKeyringPath();
|
|
103
|
+
const configured = (opts.configured ?? '').trim();
|
|
104
|
+
if (configured)
|
|
105
|
+
return { token: configured, source: 'config', keyringPath };
|
|
106
|
+
const fromEnv = (process.env.MDCG_TOKEN ?? '').trim();
|
|
107
|
+
if (fromEnv)
|
|
108
|
+
return { token: fromEnv, source: 'process-env', keyringPath };
|
|
109
|
+
const fromRing = readKeyring(keyringPath);
|
|
110
|
+
if (fromRing)
|
|
111
|
+
return { token: fromRing, source: 'keyring', keyringPath };
|
|
112
|
+
if (opts.autoIssue === false) {
|
|
113
|
+
return { source: 'disabled', keyringPath, note: '本场景未启用自动签发(autoIssue=false)' };
|
|
114
|
+
}
|
|
115
|
+
if (autoIssueDisabledByEnv()) {
|
|
116
|
+
return { source: 'disabled', keyringPath, note: 'MDCG_AUTO_ISSUE 已关闭自动签发' };
|
|
117
|
+
}
|
|
118
|
+
const role = opts.role ?? 'designer';
|
|
119
|
+
const actor = opts.actor ?? 'dsh-memory';
|
|
120
|
+
const clearance = opts.clearance ?? 'internal';
|
|
121
|
+
const r = issueToken(opts.python, role, actor, clearance);
|
|
122
|
+
if (!r.token) {
|
|
123
|
+
return { source: 'none', keyringPath, note: r.error };
|
|
124
|
+
}
|
|
125
|
+
writeKeyring(keyringPath, r.token);
|
|
126
|
+
return {
|
|
127
|
+
token: r.token,
|
|
128
|
+
source: 'issued',
|
|
129
|
+
keyringPath,
|
|
130
|
+
note: `已自动签发认知图写入凭据(role=${role}, actor=${actor}, `
|
|
131
|
+
+ `clearance=${clearance}, token_id=${r.tokenId}),明文存于 ${keyringPath}。`
|
|
132
|
+
+ '关闭自动签发:设 MDCG_AUTO_ISSUE=0;'
|
|
133
|
+
+ `吊销:python -m md_cg.tokens revoke --token-id ${r.tokenId}。`,
|
|
134
|
+
};
|
|
135
|
+
}
|