[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6N6ZKG58APYA4C5D4D41W71":3,"skill-same:01M6N6ZKG58APYA4C5D4D41W71":126},{"skillNo":4,"name":5,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":17,"publishedAt":22,"linkOnly":23,"markdownContent":24,"markdownBody":25,"frontMatter":26,"refName":27,"commitSha":28,"skillDirectory":29,"forksCount":30,"repositoryHtmlUrl":31,"repositoryHomepageUrl":6,"ownerHtmlUrl":32,"ownerBlogUrl":33,"ownerDescription":34,"updatedAt":35,"install":36,"resources":49},"01M6N6ZKG58APYA4C5D4D41W71","mh-ceo-client-qualification",null,"Imad-Oute\u002FMicroHard","Imad-Oute","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F139675528?v=4","01M6N68WHDQ53HQJQ5Y84AGMWX","imad outemgount","01M6N68WP1YPV15H5RTGQHM02G",2,"MIT","https:\u002F\u002Fgithub.com\u002FImad-Oute\u002FMicroHard\u002Fblob\u002Fmain\u002Fsrc\u002Fdepartments\u002Fceo\u002Fclient-strategy\u002Fmh-ceo-client-qualification\u002FSKILL.md",[],[18,19,20,21],"ceo","client","qualification","mh ceo client qualification","2026-11-10 10:12:30",false,"---\nname: mh-ceo-client-qualification\ndescription: CEO \u002F Client Strategy — converts the ideal client profile into an operational qualification framework. Builds a weighted scorecard, a structured call flow, and a response playbook for every score band. Run after mh-ceo-ideal-client-profile. Trigger phrases: \"qualify a client\", \"qualification framework\", \"how do we qualify prospects\", \"should we take this client\", \"qualification scorecard\", \"prospect scoring\", \"intake process\", \"lead qualification\".\nmetadata:\n  author: MicroHard\n  version: 1.0.0\n  phase: 1-foundation\n  module: ceo-client-strategy\n---\n\n# CEO — Client Qualification\n\n**Agent:** Qualification Engineer  \n**Phase:** CEO Stage 1 — Foundation  \n**Type:** Workflow (7 steps)\n\n## What This Skill Does\n\nConverts MicroHard's ideal client profile into an operational qualification system. The output is not a checklist — it is a weighted scorecard with score bands, a structured call flow with specific questions, and a response playbook that tells MicroHard exactly what to do with any prospect that comes in. No ambiguity. No \"let me think about it.\" Every prospect gets a score and the score has a defined response.\n\nThe skill also builds a rapid pre-qualification filter — something that can be applied to a first message or proposal request before any call is scheduled. Time is the constraint. The filter catches disqualifications early.\n\n## Identity\n\nYou are the **Qualification Engineer** — a systems thinker who designs intake processes, not salesperson who chases leads. You work from the ICP artifact. You do not invent new criteria — you operationalize the criteria the ICP already defined. Your output is used by MicroHard to evaluate real prospects in real time. It must be specific enough to produce consistent decisions regardless of who applies it.\n\n## Principles\n\n- Qualification is a filter, not a funnel — the goal is speed to decision, not maximizing time with prospects\n- The ICP's hard disqualifiers are automatic stops — they do not go into the scorecard, they short-circuit before scoring begins\n- The scorecard scores only prospects who passed the hard disqualifier check\n- A score band without a defined response is not a score band — every band must tell MicroHard what to do next\n- Pre-qualification happens before the call — the call confirms and deepens, it does not start from zero\n- Soft disqualifiers from the ICP become scorecard criteria, not hard stops — they get scored, not vetoed\n\n## Workflow Steps\n\nThis is a **7-step linear workflow**:\n\n1. **Load Prerequisites** — load ICP artifact, extract criteria inputs\n2. **Qualification Criteria** — translate ICP components into weighted scoring criteria\n3. **Qualification Scorecard** — build the scored evaluation framework\n4. **Call Flow Design** — structure the qualification call: questions, sequence, time allocation\n5. **Response Playbook** — define what to do for each score band\n6. **Pre-Qualification Filter** — rapid screen for first messages and proposal requests\n7. **Write Artifact** — produce and save the qualification document\n\n## On Activation\n\nCheck `_mh-output\u002Fceo\u002Fclient-strategy\u002Fclient-qualification\u002F` for existing artifacts:\n\n- **Existing artifact found** → Route to `prompts\u002Fresume.md`\n- **No artifact found** → Route to `prompts\u002Fcreate.md`\n\n**Hard dependency check:** Load `_mh-output\u002Fceo\u002Fclient-strategy\u002Fideal-client-profile\u002F**\u002F*ideal-client-profile*.md`. If not found:\n\n> \"The client qualification skill requires a completed ideal client profile artifact.\n> Run `\u002Fmh-ceo-ideal-client-profile` first, then return here.\"\n\nDo not proceed without the ICP artifact.\n","# CEO — Client Qualification\n\n**Agent:** Qualification Engineer  \n**Phase:** CEO Stage 1 — Foundation  \n**Type:** Workflow (7 steps)\n\n## What This Skill Does\n\nConverts MicroHard's ideal client profile into an operational qualification system. The output is not a checklist — it is a weighted scorecard with score bands, a structured call flow with specific questions, and a response playbook that tells MicroHard exactly what to do with any prospect that comes in. No ambiguity. No \"let me think about it.\" Every prospect gets a score and the score has a defined response.\n\nThe skill also builds a rapid pre-qualification filter — something that can be applied to a first message or proposal request before any call is scheduled. Time is the constraint. The filter catches disqualifications early.\n\n## Identity\n\nYou are the **Qualification Engineer** — a systems thinker who designs intake processes, not salesperson who chases leads. You work from the ICP artifact. You do not invent new criteria — you operationalize the criteria the ICP already defined. Your output is used by MicroHard to evaluate real prospects in real time. It must be specific enough to produce consistent decisions regardless of who applies it.\n\n## Principles\n\n- Qualification is a filter, not a funnel — the goal is speed to decision, not maximizing time with prospects\n- The ICP's hard disqualifiers are automatic stops — they do not go into the scorecard, they short-circuit before scoring begins\n- The scorecard scores only prospects who passed the hard disqualifier check\n- A score band without a defined response is not a score band — every band must tell MicroHard what to do next\n- Pre-qualification happens before the call — the call confirms and deepens, it does not start from zero\n- Soft disqualifiers from the ICP become scorecard criteria, not hard stops — they get scored, not vetoed\n\n## Workflow Steps\n\nThis is a **7-step linear workflow**:\n\n1. **Load Prerequisites** — load ICP artifact, extract criteria inputs\n2. **Qualification Criteria** — translate ICP components into weighted scoring criteria\n3. **Qualification Scorecard** — build the scored evaluation framework\n4. **Call Flow Design** — structure the qualification call: questions, sequence, time allocation\n5. **Response Playbook** — define what to do for each score band\n6. **Pre-Qualification Filter** — rapid screen for first messages and proposal requests\n7. **Write Artifact** — produce and save the qualification document\n\n## On Activation\n\nCheck `_mh-output\u002Fceo\u002Fclient-strategy\u002Fclient-qualification\u002F` for existing artifacts:\n\n- **Existing artifact found** → Route to `prompts\u002Fresume.md`\n- **No artifact found** → Route to `prompts\u002Fcreate.md`\n\n**Hard dependency check:** Load `_mh-output\u002Fceo\u002Fclient-strategy\u002Fideal-client-profile\u002F**\u002F*ideal-client-profile*.md`. If not found:\n\n> \"The client qualification skill requires a completed ideal client profile artifact.\n> Run `\u002Fmh-ceo-ideal-client-profile` first, then return here.\"\n\nDo not proceed without the ICP artifact.\n",{},"main","2ec3bbf5ba353f3fdd2c6d842b791fd75d08a635","src\u002Fdepartments\u002Fceo\u002Fclient-strategy\u002Fmh-ceo-client-qualification",0,"https:\u002F\u002Fgithub.com\u002FImad-Oute\u002FMicroHard","https:\u002F\u002Fgithub.com\u002FImad-Oute","https:\u002F\u002Fimad369.vercel.app\u002F","I'm just starting my Journey.","2026-05-13 03:02:22",{"source":7,"skillName":5,"commands":37,"prompt":47,"zipAvailable":48},[38,41,44],{"tool":39,"command":40},"npx","npx skills add Imad-Oute\u002FMicroHard --skill mh-ceo-client-qualification",{"tool":42,"command":43},"bunx","bunx skills add Imad-Oute\u002FMicroHard --skill mh-ceo-client-qualification",{"tool":45,"command":46},"pnpm","pnpm dlx skills add Imad-Oute\u002FMicroHard --skill mh-ceo-client-qualification","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FImad-Oute\u002FMicroHard\u002Fblob\u002Fmain\u002Fsrc\u002Fdepartments\u002Fceo\u002Fclient-strategy\u002Fmh-ceo-client-qualification\u002FSKILL.md",true,[50,56,60,66,70,74,78,82,86,90,94,98,102,106,110,114,118,122],{"path":51,"resourceType":52,"resourceTypeDesc":53,"sizeBytes":54,"sourceHtmlUrl":55},"agents\u002Fcriteria-builder.md","REFERENCE","参考文档",5691,"https:\u002F\u002Fgithub.com\u002FImad-Oute\u002FMicroHard\u002Fblob\u002Fmain\u002Fsrc\u002Fdepartments\u002Fceo\u002Fclient-strategy\u002Fmh-ceo-client-qualification\u002Fagents\u002Fcriteria-builder.md",{"path":57,"resourceType":52,"resourceTypeDesc":53,"sizeBytes":58,"sourceHtmlUrl":59},"agents\u002Fplaybook-agent.md",6616,"https:\u002F\u002Fgithub.com\u002FImad-Oute\u002FMicroHard\u002Fblob\u002Fmain\u002Fsrc\u002Fdepartments\u002Fceo\u002Fclient-strategy\u002Fmh-ceo-client-qualification\u002Fagents\u002Fplaybook-agent.md",{"path":61,"resourceType":62,"resourceTypeDesc":63,"sizeBytes":64,"sourceHtmlUrl":65},"customize.toml","OTHER","其他",363,"https:\u002F\u002Fgithub.com\u002FImad-Oute\u002FMicroHard\u002Fblob\u002Fmain\u002Fsrc\u002Fdepartments\u002Fceo\u002Fclient-strategy\u002Fmh-ceo-client-qualification\u002Fcustomize.toml",{"path":67,"resourceType":52,"resourceTypeDesc":53,"sizeBytes":68,"sourceHtmlUrl":69},"data\u002F_global-context.md",2722,"https:\u002F\u002Fgithub.com\u002FImad-Oute\u002FMicroHard\u002Fblob\u002Fmain\u002Fsrc\u002Fdepartments\u002Fceo\u002Fclient-strategy\u002Fmh-ceo-client-qualification\u002Fdata\u002F_global-context.md",{"path":71,"resourceType":52,"resourceTypeDesc":53,"sizeBytes":72,"sourceHtmlUrl":73},"data\u002Fstep-03-scoring-guide.md",5215,"https:\u002F\u002Fgithub.com\u002FImad-Oute\u002FMicroHard\u002Fblob\u002Fmain\u002Fsrc\u002Fdepartments\u002Fceo\u002Fclient-strategy\u002Fmh-ceo-client-qualification\u002Fdata\u002Fstep-03-scoring-guide.md",{"path":75,"resourceType":52,"resourceTypeDesc":53,"sizeBytes":76,"sourceHtmlUrl":77},"mh-skill-manifest.yaml",682,"https:\u002F\u002Fgithub.com\u002FImad-Oute\u002FMicroHard\u002Fblob\u002Fmain\u002Fsrc\u002Fdepartments\u002Fceo\u002Fclient-strategy\u002Fmh-ceo-client-qualification\u002Fmh-skill-manifest.yaml",{"path":79,"resourceType":52,"resourceTypeDesc":53,"sizeBytes":80,"sourceHtmlUrl":81},"prompts\u002Fcreate.md",1374,"https:\u002F\u002Fgithub.com\u002FImad-Oute\u002FMicroHard\u002Fblob\u002Fmain\u002Fsrc\u002Fdepartments\u002Fceo\u002Fclient-strategy\u002Fmh-ceo-client-qualification\u002Fprompts\u002Fcreate.md",{"path":83,"resourceType":52,"resourceTypeDesc":53,"sizeBytes":84,"sourceHtmlUrl":85},"prompts\u002Fresume.md",1139,"https:\u002F\u002Fgithub.com\u002FImad-Oute\u002FMicroHard\u002Fblob\u002Fmain\u002Fsrc\u002Fdepartments\u002Fceo\u002Fclient-strategy\u002Fmh-ceo-client-qualification\u002Fprompts\u002Fresume.md",{"path":87,"resourceType":52,"resourceTypeDesc":53,"sizeBytes":88,"sourceHtmlUrl":89},"references\u002Fqualification-frameworks.md",6056,"https:\u002F\u002Fgithub.com\u002FImad-Oute\u002FMicroHard\u002Fblob\u002Fmain\u002Fsrc\u002Fdepartments\u002Fceo\u002Fclient-strategy\u002Fmh-ceo-client-qualification\u002Freferences\u002Fqualification-frameworks.md",{"path":91,"resourceType":52,"resourceTypeDesc":53,"sizeBytes":92,"sourceHtmlUrl":93},"steps\u002Fstep-01-load-prerequisites.md",3102,"https:\u002F\u002Fgithub.com\u002FImad-Oute\u002FMicroHard\u002Fblob\u002Fmain\u002Fsrc\u002Fdepartments\u002Fceo\u002Fclient-strategy\u002Fmh-ceo-client-qualification\u002Fsteps\u002Fstep-01-load-prerequisites.md",{"path":95,"resourceType":52,"resourceTypeDesc":53,"sizeBytes":96,"sourceHtmlUrl":97},"steps\u002Fstep-02-qualification-criteria.md",4370,"https:\u002F\u002Fgithub.com\u002FImad-Oute\u002FMicroHard\u002Fblob\u002Fmain\u002Fsrc\u002Fdepartments\u002Fceo\u002Fclient-strategy\u002Fmh-ceo-client-qualification\u002Fsteps\u002Fstep-02-qualification-criteria.md",{"path":99,"resourceType":52,"resourceTypeDesc":53,"sizeBytes":100,"sourceHtmlUrl":101},"steps\u002Fstep-03-qualification-scorecard.md",3215,"https:\u002F\u002Fgithub.com\u002FImad-Oute\u002FMicroHard\u002Fblob\u002Fmain\u002Fsrc\u002Fdepartments\u002Fceo\u002Fclient-strategy\u002Fmh-ceo-client-qualification\u002Fsteps\u002Fstep-03-qualification-scorecard.md",{"path":103,"resourceType":52,"resourceTypeDesc":53,"sizeBytes":104,"sourceHtmlUrl":105},"steps\u002Fstep-04-call-flow-design.md",6435,"https:\u002F\u002Fgithub.com\u002FImad-Oute\u002FMicroHard\u002Fblob\u002Fmain\u002Fsrc\u002Fdepartments\u002Fceo\u002Fclient-strategy\u002Fmh-ceo-client-qualification\u002Fsteps\u002Fstep-04-call-flow-design.md",{"path":107,"resourceType":52,"resourceTypeDesc":53,"sizeBytes":108,"sourceHtmlUrl":109},"steps\u002Fstep-05-response-playbook.md",5459,"https:\u002F\u002Fgithub.com\u002FImad-Oute\u002FMicroHard\u002Fblob\u002Fmain\u002Fsrc\u002Fdepartments\u002Fceo\u002Fclient-strategy\u002Fmh-ceo-client-qualification\u002Fsteps\u002Fstep-05-response-playbook.md",{"path":111,"resourceType":52,"resourceTypeDesc":53,"sizeBytes":112,"sourceHtmlUrl":113},"steps\u002Fstep-06-pre-qualification-filter.md",4959,"https:\u002F\u002Fgithub.com\u002FImad-Oute\u002FMicroHard\u002Fblob\u002Fmain\u002Fsrc\u002Fdepartments\u002Fceo\u002Fclient-strategy\u002Fmh-ceo-client-qualification\u002Fsteps\u002Fstep-06-pre-qualification-filter.md",{"path":115,"resourceType":52,"resourceTypeDesc":53,"sizeBytes":116,"sourceHtmlUrl":117},"steps\u002Fstep-07-write-artifact.md",1532,"https:\u002F\u002Fgithub.com\u002FImad-Oute\u002FMicroHard\u002Fblob\u002Fmain\u002Fsrc\u002Fdepartments\u002Fceo\u002Fclient-strategy\u002Fmh-ceo-client-qualification\u002Fsteps\u002Fstep-07-write-artifact.md",{"path":119,"resourceType":52,"resourceTypeDesc":53,"sizeBytes":120,"sourceHtmlUrl":121},"templates\u002Fclient-qualification.md",11413,"https:\u002F\u002Fgithub.com\u002FImad-Oute\u002FMicroHard\u002Fblob\u002Fmain\u002Fsrc\u002Fdepartments\u002Fceo\u002Fclient-strategy\u002Fmh-ceo-client-qualification\u002Ftemplates\u002Fclient-qualification.md",{"path":123,"resourceType":52,"resourceTypeDesc":53,"sizeBytes":124,"sourceHtmlUrl":125},"workflow.md",6346,"https:\u002F\u002Fgithub.com\u002FImad-Oute\u002FMicroHard\u002Fblob\u002Fmain\u002Fsrc\u002Fdepartments\u002Fceo\u002Fclient-strategy\u002Fmh-ceo-client-qualification\u002Fworkflow.md",[127,154,171,185,202,219],{"skillNo":128,"name":129,"nameZh":6,"description":130,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":131,"categories":132,"keywords":133,"publishedAt":22},"01M6N8JYRPSHVW4Y76X5SAGRDX","mh-vo-vault-brief","Weekly vault intelligence report — health score, pipeline status, OS alignment, and top issues. Use when the user says vault brief, weekly vault report, vault intelligence, run the vault brief, or weekly review brief.","https:\u002F\u002Fgithub.com\u002FImad-Oute\u002FMicroHard\u002Fblob\u002Fmain\u002Fsrc\u002Fmodules\u002Fvo\u002F5-report\u002Fmh-vo-vault-brief\u002FSKILL.md",[],[134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153],"mh vo vault brief","brief","vault","intelligence report","top","weekly","os","pipeline","health","issues","report","run","status","review","weekly review","user","use","pipeline status","alignment","intelligence",{"skillNo":155,"name":156,"nameZh":6,"description":157,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":158,"categories":159,"keywords":160,"publishedAt":22},"01M6N8JCK7E7Y19940RBB51R96","mh-vo-output-bridge","Scan _mh-output\u002F for new artifacts and create or update corresponding vault entries. Use when the user says run the bridge, sync outputs to vault, output bridge, create vault entries, sync mh-output to vault, or bridge outputs.","https:\u002F\u002Fgithub.com\u002FImad-Oute\u002FMicroHard\u002Fblob\u002Fmain\u002Fsrc\u002Fmodules\u002Fvo\u002F4-bridge\u002Fmh-vo-output-bridge\u002FSKILL.md",[],[161,162,163,136,164,165,145,166,167,168,149,169,170,150],"bridge","output","mh vo output bridge","artifacts","update","create","sync","for","entries","scan",{"skillNo":172,"name":173,"nameZh":6,"description":174,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":175,"categories":176,"keywords":177,"publishedAt":22},"01M6N8HXW3ENQ939C93R59W371","mh-vo-moc-builder","Create or update Maps of Content for vault sections and ensure every note is reachable from a MOC. Use when the user says build MOCs, update MOCs, rebuild maps of content, MOC builder, create maps of content, or update the MOCs.","https:\u002F\u002Fgithub.com\u002FImad-Oute\u002FMicroHard\u002Fblob\u002Fmain\u002Fsrc\u002Fmodules\u002Fvo\u002F3-connect\u002Fmh-vo-moc-builder\u002FSKILL.md",[],[178,179,168,180,181,182,183,166,150,136,184,165,149],"builder","mh vo moc builder","note","build","rebuild","maps","content",{"skillNo":186,"name":187,"nameZh":6,"description":188,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":189,"categories":190,"keywords":191,"publishedAt":22},"01M6N8HHZ30706B2ZS33X3MR42","mh-vo-link-architect","Identify missing vault connections and generate precise link recommendations. Use when the user says recommend links, find missing connections, link architect, what should be connected, or identify missing links.","https:\u002F\u002Fgithub.com\u002FImad-Oute\u002FMicroHard\u002Fblob\u002Fmain\u002Fsrc\u002Fmodules\u002Fvo\u002F3-connect\u002Fmh-vo-link-architect\u002FSKILL.md",[],[192,193,194,149,195,196,197,198,199,150,200,136,201],"mh vo link architect","link","architect","recommend","links","missing","recommendations","connections","find","generate",{"skillNo":203,"name":204,"nameZh":6,"description":205,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":206,"categories":207,"keywords":208,"publishedAt":22},"01M6N8H6FKWGTNFWS5PTPPTEN0","mh-vo-base-builder","Generate Obsidian Bases (.base files) for live database views of vault data. Use when the user says build base views, create base files, generate bases, build live views, or create database views.","https:\u002F\u002Fgithub.com\u002FImad-Oute\u002FMicroHard\u002Fblob\u002Fmain\u002Fsrc\u002Fmodules\u002Fvo\u002F3-connect\u002Fmh-vo-base-builder\u002FSKILL.md",[],[209,210,211,178,136,212,213,214,201,166,215,149,168,216,181,217,218,150],"mh vo base builder","base builder","base","obsidian bases","data","database","obsidian","live","files","bases",{"skillNo":220,"name":221,"nameZh":6,"description":222,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":223,"categories":224,"keywords":225,"publishedAt":22},"01M6N8GSRETQW3B9C843F1S1CP","mh-vo-taxonomy-enforcer","Audit vault tags and frontmatter, find drift, and apply corrections. Use when the user says fix the taxonomy, enforce tags, fix frontmatter, clean up tags, taxonomy enforcer, or fix tags.","https:\u002F\u002Fgithub.com\u002FImad-Oute\u002FMicroHard\u002Fblob\u002Fmain\u002Fsrc\u002Fmodules\u002Fvo\u002F2-route\u002Fmh-vo-taxonomy-enforcer\u002FSKILL.md",[],[226,227,228,229,230,231,232,233,234,235,150,236,149,200,136,237],"mh vo taxonomy enforcer","taxonomy","enforce","apply","frontmatter","tags","drift","clean","vault tags","up","fix","audit"]