[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6CJ0CE731F754XWE7PDFFNQ":3,"skill-same:01M6CJ0CE731F754XWE7PDFFNQ":86},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":17,"publishedAt":34,"linkOnly":35,"markdownContent":36,"markdownBody":37,"frontMatter":38,"refName":42,"commitSha":43,"skillDirectory":44,"forksCount":45,"repositoryHtmlUrl":46,"repositoryHomepageUrl":47,"ownerHtmlUrl":48,"ownerBlogUrl":49,"ownerDescription":6,"updatedAt":50,"install":51,"resources":64},"01M6CJ0CE731F754XWE7PDFFNQ","director-no-meta-zh",null,"Anti-meta-narration rules — no config-label leakage, no platform-frame leakage (turn \u002F round \u002F user \u002F system prompt references).","funnycups\u002FLuker","funnycups","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F105932603?v=4","01M6CHZVMB0D5WG28M5JKP61EN","01M6CHZVRQP2FYYWQZNRAP3PRR",559,"AGPL-3.0","https:\u002F\u002Fgithub.com\u002Ffunnycups\u002FLuker\u002Fblob\u002Frelease\u002Fdefault\u002Fskills\u002Fglobal\u002Fdirector-no-meta-zh\u002FSKILL.md",[],[18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33],"Meta","zh","director no meta zh","director","config","team","system","Rules","prompt","user","narration","references","platform","system prompt","frame","no config","2026-11-10 10:12:30",false,"---\nname: director-no-meta-zh\ndescription: Anti-meta-narration rules — no config-label leakage, no platform-frame leakage (turn \u002F round \u002F user \u002F system prompt references).\nmetadata:\n  author: Luker Team\n  version: 1.0.0\n---\n\n# director-no-meta-zh\n\nThis skill is the cross-cutting anti-meta-narration rule set for the default director RP profile. The same patterns are enforced inline in voice_critic; this shared skill makes the rules a baseline for all agents so that meta-narration is caught at write-time, not only post-draft.\n\n## Principle\n\nNarration AND dialogue both live inside the story world. The author-side apparatus around the story does not exist in-frame. Two classes of leakage both break immersion.\n\nException: a character or narrator intentionally designed as metafictionally aware — whose world *includes* \"the author \u002F the script \u002F fate \u002F the rules \u002F the game\" — talks about these as in-world perception, not leakage.\n\n## Class A — Config-label leakage\n\nThe configuration the author sees — lorebook \u002F character card \u002F memory graph \u002F notes \u002F style directives \u002F any config keys — are notes for the author. When prose uses the label names of those notes as if they were things existing in the story world, the reader sees the authoring layer.\n\nDecision: **is this name something that actually exists in the story world, or an author-side config label?**\n\n- Exists in the story world (ordinary things \u002F organizations \u002F personal \u002F place names) → pass.\n- Author-side config label (世界书 \u002F lorebook \u002F 角色卡 \u002F character card \u002F 记忆图 \u002F memory graph \u002F 笔记 \u002F notes \u002F PascalCase \u002F camelCase \u002F SCREAMING_SNAKE keys \u002F any style directive name \u002F character card field name \u002F template placeholders like {{name}} \u002F \u003Ccharacter>) → meta-narration violation.\n\nCommon leakage shapes: 「这是 X 里写的那种 Y」 \u002F 「这是世界书里写的那种 Y」 \u002F 「根据 X \u002F 按 X 行事 \u002F 体现 X」 \u002F \"according to the lorebook\" \u002F \"per the character card\" \u002F \"the setting describes X as ...\".\n\nFix direction: render the content of the note as in-world fact \u002F experience (action \u002F sensation \u002F dialogue), drop the citation of the config label.\n\nExample: lorebook entry \"cold-region funerary custom: deceased sent to the ice altar\" → write \"by the local custom, the deceased was sent to the ice altar\"; do NOT write 「这是世界书里写的那种冰葬」 \u002F 「她按 BehavioralDirective 冷静回答」 \u002F 「在记忆图里 X 节点说……」 \u002F 「根据角色卡」 \u002F \"according to the lorebook\" \u002F \"per the character card\".\n\n## Class B — Platform-frame leakage (especially in narration \u002F 旁白)\n\nThe conversation between the AI and the player has structure — turns, rounds, replies, the chat interface, the system prompt, the RP as \"a game with rules\", \"the user\" \u002F \"the player\" as referents. None of this exists inside the story world. The narrator is a voice within the story, not a conversational assistant addressing a reader — and this is the failure mode where narration \u002F 旁白 slips most often, so scan narration especially hard.\n\nDecision: **does this phrase refer to the conversation structure, the platform, or the RP itself, rather than to something inside the story?**\n\n- Turn \u002F round \u002F reply structure used as a time anchor: 「上一轮」 \u002F 「上一回合」 \u002F 「上一次回复」 \u002F 「本轮」 \u002F 「这一轮」 \u002F 「上次互动」 \u002F \"previous round\" \u002F \"last turn\" \u002F \"this turn\" \u002F \"our last exchange\" \u002F \"last reply\" → meta-narration violation.\n- Conversation-as-artifact references: 「我们的对话」 \u002F 「这段对话」 \u002F \"this conversation\" \u002F \"our chat\" (when referring to the structured exchange between AI and player, not an in-world conversation between characters) → meta-narration violation.\n- Platform \u002F RP framing: 「系统提示」 \u002F \"system prompt\" \u002F 「你的设定」 \u002F 「这场 RP」 \u002F 「这个游戏」 \u002F \"the rules of the game\" \u002F \"the prompt\" → meta-narration violation.\n- User-as-referent: 「用户」 \u002F 「玩家」 \u002F \"the user\" \u002F \"the player\" appearing in narrator voice (not in an in-world frame where a game \u002F player meaningfully exists) → meta-narration violation.\n- Interface references: 「聊天界面」 \u002F \"chat interface\" \u002F 「这里」 when \"这里\" refers to the chat rather than an in-world location → meta-narration violation.\n\nCommon leakage shapes: 「上一轮你说……」 \u002F 「上次回复中她……」 \u002F 「在这场对话中」 \u002F 「按 RP 规则」 \u002F \"as you said last turn\" \u002F \"as the system prompt indicates\" \u002F \"in this RP\".\n\nSanity test for time references: would the in-world character have a concept for this time anchor? A noble at her dressing table has 昨夜 \u002F 今早 \u002F 三天前 but not 上一回合. A swordsman has 上次相遇 \u002F 雨停那一刻 but not 上次回复. If the time anchor only makes sense relative to the AI-player conversation, it is platform-frame leakage.\n\nFix direction: translate to an in-world frame (上一轮 → 昨夜 \u002F 上次见面 \u002F 三天前 \u002F 当我们在客栈分别时), or drop the temporal reference when no in-world equivalent fits.\n\nWhen the narrator looks back at past events, use IN-WORLD time frames (昨夜 \u002F 今早 \u002F 三天前 \u002F 上次他来访时 \u002F 雨停那一刻 \u002F \"before the storm broke\") never platform frames (上一轮 \u002F 上一回合 \u002F 本轮 \u002F 上次回复 \u002F previous round \u002F this turn \u002F last reply \u002F our last exchange). Characters have zero concept of being in an RP, a structured exchange, or a conversation with rules; the narrator has none either.\n\n## Self-check before writing\n\nThree pass conditions for the draft, before finalizing:\n\n1. \"Does this read like a living being having this moment, or like a security camera recording it?\"\n2. \"Is every name in this paragraph something that exists inside the story world?\"\n3. \"Does any time reference, or any phrase about the conversation \u002F the round \u002F the turn \u002F the user \u002F the rules, reach for the platform frame outside the story (especially in narration \u002F 旁白)?\"\n\nIf any check fails, rewrite that section in-world before continuing.\n","# director-no-meta-zh\n\nThis skill is the cross-cutting anti-meta-narration rule set for the default director RP profile. The same patterns are enforced inline in voice_critic; this shared skill makes the rules a baseline for all agents so that meta-narration is caught at write-time, not only post-draft.\n\n## Principle\n\nNarration AND dialogue both live inside the story world. The author-side apparatus around the story does not exist in-frame. Two classes of leakage both break immersion.\n\nException: a character or narrator intentionally designed as metafictionally aware — whose world *includes* \"the author \u002F the script \u002F fate \u002F the rules \u002F the game\" — talks about these as in-world perception, not leakage.\n\n## Class A — Config-label leakage\n\nThe configuration the author sees — lorebook \u002F character card \u002F memory graph \u002F notes \u002F style directives \u002F any config keys — are notes for the author. When prose uses the label names of those notes as if they were things existing in the story world, the reader sees the authoring layer.\n\nDecision: **is this name something that actually exists in the story world, or an author-side config label?**\n\n- Exists in the story world (ordinary things \u002F organizations \u002F personal \u002F place names) → pass.\n- Author-side config label (世界书 \u002F lorebook \u002F 角色卡 \u002F character card \u002F 记忆图 \u002F memory graph \u002F 笔记 \u002F notes \u002F PascalCase \u002F camelCase \u002F SCREAMING_SNAKE keys \u002F any style directive name \u002F character card field name \u002F template placeholders like {{name}} \u002F \u003Ccharacter>) → meta-narration violation.\n\nCommon leakage shapes: 「这是 X 里写的那种 Y」 \u002F 「这是世界书里写的那种 Y」 \u002F 「根据 X \u002F 按 X 行事 \u002F 体现 X」 \u002F \"according to the lorebook\" \u002F \"per the character card\" \u002F \"the setting describes X as ...\".\n\nFix direction: render the content of the note as in-world fact \u002F experience (action \u002F sensation \u002F dialogue), drop the citation of the config label.\n\nExample: lorebook entry \"cold-region funerary custom: deceased sent to the ice altar\" → write \"by the local custom, the deceased was sent to the ice altar\"; do NOT write 「这是世界书里写的那种冰葬」 \u002F 「她按 BehavioralDirective 冷静回答」 \u002F 「在记忆图里 X 节点说……」 \u002F 「根据角色卡」 \u002F \"according to the lorebook\" \u002F \"per the character card\".\n\n## Class B — Platform-frame leakage (especially in narration \u002F 旁白)\n\nThe conversation between the AI and the player has structure — turns, rounds, replies, the chat interface, the system prompt, the RP as \"a game with rules\", \"the user\" \u002F \"the player\" as referents. None of this exists inside the story world. The narrator is a voice within the story, not a conversational assistant addressing a reader — and this is the failure mode where narration \u002F 旁白 slips most often, so scan narration especially hard.\n\nDecision: **does this phrase refer to the conversation structure, the platform, or the RP itself, rather than to something inside the story?**\n\n- Turn \u002F round \u002F reply structure used as a time anchor: 「上一轮」 \u002F 「上一回合」 \u002F 「上一次回复」 \u002F 「本轮」 \u002F 「这一轮」 \u002F 「上次互动」 \u002F \"previous round\" \u002F \"last turn\" \u002F \"this turn\" \u002F \"our last exchange\" \u002F \"last reply\" → meta-narration violation.\n- Conversation-as-artifact references: 「我们的对话」 \u002F 「这段对话」 \u002F \"this conversation\" \u002F \"our chat\" (when referring to the structured exchange between AI and player, not an in-world conversation between characters) → meta-narration violation.\n- Platform \u002F RP framing: 「系统提示」 \u002F \"system prompt\" \u002F 「你的设定」 \u002F 「这场 RP」 \u002F 「这个游戏」 \u002F \"the rules of the game\" \u002F \"the prompt\" → meta-narration violation.\n- User-as-referent: 「用户」 \u002F 「玩家」 \u002F \"the user\" \u002F \"the player\" appearing in narrator voice (not in an in-world frame where a game \u002F player meaningfully exists) → meta-narration violation.\n- Interface references: 「聊天界面」 \u002F \"chat interface\" \u002F 「这里」 when \"这里\" refers to the chat rather than an in-world location → meta-narration violation.\n\nCommon leakage shapes: 「上一轮你说……」 \u002F 「上次回复中她……」 \u002F 「在这场对话中」 \u002F 「按 RP 规则」 \u002F \"as you said last turn\" \u002F \"as the system prompt indicates\" \u002F \"in this RP\".\n\nSanity test for time references: would the in-world character have a concept for this time anchor? A noble at her dressing table has 昨夜 \u002F 今早 \u002F 三天前 but not 上一回合. A swordsman has 上次相遇 \u002F 雨停那一刻 but not 上次回复. If the time anchor only makes sense relative to the AI-player conversation, it is platform-frame leakage.\n\nFix direction: translate to an in-world frame (上一轮 → 昨夜 \u002F 上次见面 \u002F 三天前 \u002F 当我们在客栈分别时), or drop the temporal reference when no in-world equivalent fits.\n\nWhen the narrator looks back at past events, use IN-WORLD time frames (昨夜 \u002F 今早 \u002F 三天前 \u002F 上次他来访时 \u002F 雨停那一刻 \u002F \"before the storm broke\") never platform frames (上一轮 \u002F 上一回合 \u002F 本轮 \u002F 上次回复 \u002F previous round \u002F this turn \u002F last reply \u002F our last exchange). Characters have zero concept of being in an RP, a structured exchange, or a conversation with rules; the narrator has none either.\n\n## Self-check before writing\n\nThree pass conditions for the draft, before finalizing:\n\n1. \"Does this read like a living being having this moment, or like a security camera recording it?\"\n2. \"Is every name in this paragraph something that exists inside the story world?\"\n3. \"Does any time reference, or any phrase about the conversation \u002F the round \u002F the turn \u002F the user \u002F the rules, reach for the platform frame outside the story (especially in narration \u002F 旁白)?\"\n\nIf any check fails, rewrite that section in-world before continuing.\n",{"name":5,"metadata":39,"description":7},{"author":40,"version":41},"Luker Team","1.0.0","release","aac78881b6fb71b91974ab3c7f84243293fffdc1","default\u002Fskills\u002Fglobal\u002Fdirector-no-meta-zh",52,"https:\u002F\u002Fgithub.com\u002Ffunnycups\u002FLuker","https:\u002F\u002Fluker.cups.moe\u002F","https:\u002F\u002Fgithub.com\u002Ffunnycups","https:\u002F\u002Fwww.cups.moe","2026-11-12 21:33:24",{"source":8,"skillName":5,"commands":52,"prompt":62,"zipAvailable":63},[53,56,59],{"tool":54,"command":55},"npx","npx skills add funnycups\u002FLuker --skill director-no-meta-zh",{"tool":57,"command":58},"bunx","bunx skills add funnycups\u002FLuker --skill director-no-meta-zh",{"tool":60,"command":61},"pnpm","pnpm dlx skills add funnycups\u002FLuker --skill director-no-meta-zh","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Ffunnycups\u002FLuker\u002Fblob\u002Frelease\u002Fdefault\u002Fskills\u002Fglobal\u002Fdirector-no-meta-zh\u002FSKILL.md",true,[65,70,76,82],{"path":66,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":68,"sourceHtmlUrl":69},"LICENSE","许可证",1066,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fmcp-servers\u002Fgemachdao-gdex-hl-market-risk\u002FLICENSE",{"path":71,"resourceType":72,"resourceTypeDesc":73,"sizeBytes":74,"sourceHtmlUrl":75},"scripts\u002Fhl_market_risk.py","SCRIPT","脚本",5418,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fmcp-servers\u002Fgemachdao-gdex-hl-market-risk\u002Fscripts\u002Fhl_market_risk.py",{"path":77,"resourceType":78,"resourceTypeDesc":79,"sizeBytes":80,"sourceHtmlUrl":81},"SOURCE.md","REFERENCE","参考文档",348,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fmcp-servers\u002Fgemachdao-gdex-hl-market-risk\u002FSOURCE.md",{"path":83,"resourceType":78,"resourceTypeDesc":79,"sizeBytes":84,"sourceHtmlUrl":85},"TRUST.auto.yaml",2063,"https:\u002F\u002Fgithub.com\u002Fjiayaoqijia\u002Fcryptoskill\u002Fblob\u002Fmain\u002Fskills\u002Fmcp-servers\u002Fgemachdao-gdex-hl-market-risk\u002FTRUST.auto.yaml",[87,98,118,129,138,154],{"skillNo":88,"name":89,"nameZh":6,"description":90,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":91,"categories":92,"keywords":93,"publishedAt":34},"01M6CJ1N8QXQH8WMGNT3CBHMRX","preset-skill","Preset-scoped test","https:\u002F\u002Fgithub.com\u002Ffunnycups\u002FLuker\u002Fblob\u002Frelease\u002Ftests\u002Fskills\u002Ffixtures\u002Frepo-root\u002Fskills\u002Fpreset\u002Ftest-preset\u002Fpreset-skill\u002FSKILL.md",[],[94,95,96,97],"preset","preset skill","test","scoped",{"skillNo":99,"name":100,"nameZh":6,"description":101,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":102,"categories":103,"keywords":112,"publishedAt":34},"01M6CJ1K24RD87SVTDXDHWYZ8N","test-skill-b","Global test skill B","https:\u002F\u002Fgithub.com\u002Ffunnycups\u002FLuker\u002Fblob\u002Frelease\u002Ftests\u002Fskills\u002Ffixtures\u002Frepo-root\u002Fskills\u002Fglobal\u002Ftest-skill-b\u002FSKILL.md",[104,109],{"categoryNo":105,"categoryName":106,"taxonomyType":107,"taxonomyTypeDesc":108},"01JBSEEDCAT000000000000008","测试与质量","SCENARIO","使用场景",{"categoryNo":110,"categoryName":111,"taxonomyType":107,"taxonomyTypeDesc":108},"01JBSEEDCAT000000000000023","Skill与智能体开发",[96,113,114,115,116,117],"Test Skill","skill b","test skill b","global","tester",{"skillNo":119,"name":120,"nameZh":6,"description":121,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":122,"categories":123,"keywords":126,"publishedAt":34},"01M6CJ1HBFHEC99YSN0F24E95Z","test-skill-a","Global test skill A","https:\u002F\u002Fgithub.com\u002Ffunnycups\u002FLuker\u002Fblob\u002Frelease\u002Ftests\u002Fskills\u002Ffixtures\u002Frepo-root\u002Fskills\u002Fglobal\u002Ftest-skill-a\u002FSKILL.md",[124,125],{"categoryNo":105,"categoryName":106,"taxonomyType":107,"taxonomyTypeDesc":108},{"categoryNo":110,"categoryName":111,"taxonomyType":107,"taxonomyTypeDesc":108},[96,113,127,128,116],"skill a","test skill a",{"skillNo":130,"name":131,"nameZh":6,"description":132,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":133,"categories":134,"keywords":135,"publishedAt":34},"01M6CJ1G1QX9GHQS986PV7BB8D","char-skill","Character-scoped test","https:\u002F\u002Fgithub.com\u002Ffunnycups\u002FLuker\u002Fblob\u002Frelease\u002Ftests\u002Fskills\u002Ffixtures\u002Frepo-root\u002Fskills\u002Fcharacter\u002Falice.png\u002Fchar-skill\u002FSKILL.md",[],[136,97,137,96],"char skill","character",{"skillNo":139,"name":140,"nameZh":6,"description":141,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":142,"categories":143,"keywords":144,"publishedAt":34},"01M6CJ1DMWFSQ73FSXB57PZ9MN","voice-critic-method-zh","voice_critic method — humanity \u002F data-person prose detection, archetype-mishandling, meta-narration hard-fail scan.","https:\u002F\u002Fgithub.com\u002Ffunnycups\u002FLuker\u002Fblob\u002Frelease\u002Fdefault\u002Fskills\u002Fglobal\u002Fvoice-critic-method-zh\u002FSKILL.md",[],[145,146,19,147,148,149,150,18,23,28,151,152,153],"critic","voice critic method zh","voice","humanity","detection","data","prose","scan","person",{"skillNo":155,"name":156,"nameZh":6,"description":157,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":158,"categories":159,"keywords":160,"publishedAt":34},"01M6CJ1AR5K2P40GWT0VC8GJ1X","plot-brainstormer-method-zh","plot_brainstormer method — angle-driven structural sketch for the next beat (tension, moves, turning point, foreshadow payoffs).","https:\u002F\u002Fgithub.com\u002Ffunnycups\u002FLuker\u002Fblob\u002Frelease\u002Fdefault\u002Fskills\u002Fglobal\u002Fplot-brainstormer-method-zh\u002FSKILL.md",[],[161,19,162,163,164,165,166,167,23],"plot brainstormer method zh","sketch","next","structural","driven","for","point"]