[{"data":1,"prerenderedAt":750},["ShallowReactive",2],{"navigation_docs_en":3,"-en-cli":46,"-en-cli-surround":747},[4,31,36,41],{"title":5,"path":6,"stem":7,"children":8,"icon":10},"ESLint Config","\u002Fen\u002Feslint-config","en\u002F1.eslint-config\u002F1.index",[9,11,15,19,23,27],{"title":5,"path":6,"stem":7,"icon":10},"i-lucide-shield-check",{"title":12,"path":13,"stem":14},"Package JSON Lint","\u002Fen\u002Feslint-config\u002Fpackage-json","en\u002F1.eslint-config\u002F2.package-json",{"title":16,"path":17,"stem":18},"Nuxt Integration","\u002Fen\u002Feslint-config\u002Fnuxt","en\u002F1.eslint-config\u002F3.nuxt",{"title":20,"path":21,"stem":22},"Framework Integrations","\u002Fen\u002Feslint-config\u002Fframeworks","en\u002F1.eslint-config\u002F4.frameworks",{"title":24,"path":25,"stem":26},"Advanced Usage","\u002Fen\u002Feslint-config\u002Fadvanced","en\u002F1.eslint-config\u002F5.advanced",{"title":28,"path":29,"stem":30},"Editor & CI Integration","\u002Fen\u002Feslint-config\u002Feditor","en\u002F1.eslint-config\u002F6.editor",{"title":32,"path":33,"stem":34,"icon":35},"Prettier Config","\u002Fen\u002Fprettier-config","en\u002F2.prettier-config","i-lucide-paintbrush",{"title":37,"path":38,"stem":39,"icon":40},"EditorConfig","\u002Fen\u002Feditorconfig","en\u002F3.editorconfig","i-lucide-file-cog",{"title":42,"path":43,"stem":44,"icon":45},"CLI","\u002Fen\u002Fcli","en\u002F4.cli","i-lucide-terminal",{"id":47,"title":42,"body":48,"description":741,"extension":375,"links":742,"meta":743,"navigation":744,"path":43,"seo":745,"stem":44,"__hash__":746},"docs_en\u002Fen\u002F4.cli.md",{"type":49,"value":50,"toc":726},"minimark",[51,55,67,86,91,98,152,155,174,178,184,187,215,220,234,246,251,254,266,270,358,365,371,532,544,551,555,626,630,651,668,672,678,696,699,703,706,719,722],[52,53,42],"h1",{"id":54},"cli",[56,57,58,62,63,66],"p",{},[59,60,61],"code",{},"@pleaseai\u002Fcode-style"," is a zero-config CLI that wires PleaseAI's shared code style into any project. It installs the ESLint \u002F Prettier \u002F EditorConfig packages and manages an ",[59,64,65],{},"AGENTS.md"," rules block so AI coding assistants know how to write code that passes lint on the first try.",[56,68,69,70,77,78,85],{},"Inspired by ",[71,72,76],"a",{"href":73,"rel":74},"https:\u002F\u002Fgithub.com\u002Fhaydenbleasel\u002Fultracite",[75],"nofollow","ultracite"," and NaverPay's ",[71,79,82],{"href":80,"rel":81},"https:\u002F\u002Fgithub.com\u002FNaverPayDev\u002Fcode-style",[75],[59,83,84],{},"@naverpay\u002Fcode-style-cli",".",[87,88,90],"h2",{"id":89},"quick-start","Quick Start",[56,92,93,94,97],{},"Run from the root of any project that has a ",[59,95,96],{},"package.json",":",[99,100,101,124,139],"code-group",{},[102,103,109],"pre",{"className":104,"code":105,"filename":106,"language":107,"meta":108,"style":108},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","bunx @pleaseai\u002Fcode-style\n","bun","bash","",[59,110,111],{"__ignoreMap":108},[112,113,116,120],"span",{"class":114,"line":115},"line",1,[112,117,119],{"class":118},"sBMFI","bunx",[112,121,123],{"class":122},"sfazB"," @pleaseai\u002Fcode-style\n",[102,125,128],{"className":104,"code":126,"filename":127,"language":107,"meta":108,"style":108},"pnpm dlx @pleaseai\u002Fcode-style\n","pnpm",[59,129,130],{"__ignoreMap":108},[112,131,132,134,137],{"class":114,"line":115},[112,133,127],{"class":118},[112,135,136],{"class":122}," dlx",[112,138,123],{"class":122},[102,140,143],{"className":104,"code":141,"filename":142,"language":107,"meta":108,"style":108},"npx @pleaseai\u002Fcode-style\n","npm",[59,144,145],{"__ignoreMap":108},[112,146,147,150],{"class":114,"line":115},[112,148,149],{"class":118},"npx",[112,151,123],{"class":122},[56,153,154],{},"The CLI will:",[156,157,158,162,168,171],"ol",{},[159,160,161],"li",{},"Detect your package manager from the lockfile (bun → pnpm → yarn → npm, falling back to bun)",[159,163,164,165],{},"Show a checkbox UI listing the available tools; already-installed ones are labelled ",[59,166,167],{},"(installed)",[159,169,170],{},"Install the packages you select as dev dependencies",[159,172,173],{},"Write or update the matching config files",[87,175,177],{"id":176},"commands","Commands",[179,180,182],"h3",{"id":181},"init",[59,183,181],{},[56,185,186],{},"Interactive setup — the default when no subcommand is given.",[102,188,190],{"className":104,"code":189,"language":107,"meta":108,"style":108},"pleaseai-code-style init\npleaseai-code-style init --yes   # non-interactive, accept defaults\n",[59,191,192,200],{"__ignoreMap":108},[112,193,194,197],{"class":114,"line":115},[112,195,196],{"class":118},"pleaseai-code-style",[112,198,199],{"class":122}," init\n",[112,201,203,205,208,211],{"class":114,"line":202},2,[112,204,196],{"class":118},[112,206,207],{"class":122}," init",[112,209,210],{"class":122}," --yes",[112,212,214],{"class":213},"sHwdD","   # non-interactive, accept defaults\n",[179,216,218],{"id":217},"update",[59,219,217],{},[56,221,222,223,227,228,230,231,233],{},"Refresh ",[224,225,226],"strong",{},"only"," the ",[59,229,65],{}," rules block without touching packages or other config files. Use this after bumping ",[59,232,61],{}," to pull in the latest rules.",[102,235,237],{"className":104,"code":236,"language":107,"meta":108,"style":108},"pleaseai-code-style update\n",[59,238,239],{"__ignoreMap":108},[112,240,241,243],{"class":114,"line":115},[112,242,196],{"class":118},[112,244,245],{"class":122}," update\n",[179,247,249],{"id":248},"doctor",[59,250,248],{},[56,252,253],{},"Report the current project configuration status — which packages are installed, which config files exist.",[102,255,257],{"className":104,"code":256,"language":107,"meta":108,"style":108},"pleaseai-code-style doctor\n",[59,258,259],{"__ignoreMap":108},[112,260,261,263],{"class":114,"line":115},[112,262,196],{"class":118},[112,264,265],{"class":122}," doctor\n",[87,267,269],{"id":268},"supported-tools","Supported Tools",[271,272,273,289],"table",{},[274,275,276],"thead",{},[277,278,279,283,286],"tr",{},[280,281,282],"th",{},"Tool",[280,284,285],{},"npm package(s)",[280,287,288],{},"Config file",[290,291,292,312,330,345],"tbody",{},[277,293,294,298,307],{},[295,296,297],"td",{},"eslint-config",[295,299,300,303,304],{},[59,301,302],{},"@pleaseai\u002Feslint-config",", ",[59,305,306],{},"eslint",[295,308,309],{},[59,310,311],{},"eslint.config.mjs",[277,313,314,317,325],{},[295,315,316],{},"prettier-config",[295,318,319,303,322],{},[59,320,321],{},"@pleaseai\u002Fprettier-config",[59,323,324],{},"prettier",[295,326,327],{},[59,328,329],{},"package.json#prettier",[277,331,332,335,340],{},[295,333,334],{},"editorconfig",[295,336,337],{},[59,338,339],{},"@pleaseai\u002Feditorconfig",[295,341,342],{},[59,343,344],{},".editorconfig",[277,346,347,350,353],{},[295,348,349],{},"agents-md",[295,351,352],{},"—",[295,354,355,357],{},[59,356,65],{}," (marker-managed block)",[87,359,361,362,364],{"id":360},"the-agentsmd-rules-block","The ",[59,363,65],{}," Rules Block",[56,366,367,368,370],{},"The CLI writes a marker-delimited block into ",[59,369,65],{}," so you can mix your own content around it without losing edits on the next run:",[102,372,376],{"className":373,"code":374,"filename":65,"language":375,"meta":108,"style":108},"language-md shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","My project notes live here.\n\n\u003C!-- pleaseai-code-style:start -->\n# PleaseAI Code Style\n\nThese rules are managed by `@pleaseai\u002Fcode-style`. Run\n`pleaseai-code-style update` to refresh this block.\n\n- Formatter: `@pleaseai\u002Feslint-config` (wraps `@antfu\u002Feslint-config`)\n- No semicolons, single quotes, 2-space indent, trailing commas, LF line endings\n- ESM only — never emit `require`\u002F`module.exports`\n- ...\n\u003C!-- pleaseai-code-style:end -->\n\nMy own content stays here untouched.\n","md",[59,377,378,384,390,396,406,411,427,440,445,473,481,507,515,521,526],{"__ignoreMap":108},[112,379,380],{"class":114,"line":115},[112,381,383],{"class":382},"sTEyZ","My project notes live here.\n",[112,385,386],{"class":114,"line":202},[112,387,389],{"emptyLinePlaceholder":388},true,"\n",[112,391,393],{"class":114,"line":392},3,[112,394,395],{"class":213},"\u003C!-- pleaseai-code-style:start -->\n",[112,397,399,403],{"class":114,"line":398},4,[112,400,402],{"class":401},"sMK4o","# ",[112,404,405],{"class":118},"PleaseAI Code Style\n",[112,407,409],{"class":114,"line":408},5,[112,410,389],{"emptyLinePlaceholder":388},[112,412,414,417,420,422,424],{"class":114,"line":413},6,[112,415,416],{"class":382},"These rules are managed by ",[112,418,419],{"class":401},"`",[112,421,61],{"class":122},[112,423,419],{"class":401},[112,425,426],{"class":382},". Run\n",[112,428,430,432,435,437],{"class":114,"line":429},7,[112,431,419],{"class":401},[112,433,434],{"class":122},"pleaseai-code-style update",[112,436,419],{"class":401},[112,438,439],{"class":382}," to refresh this block.\n",[112,441,443],{"class":114,"line":442},8,[112,444,389],{"emptyLinePlaceholder":388},[112,446,448,451,454,456,458,460,463,465,468,470],{"class":114,"line":447},9,[112,449,450],{"class":401},"-",[112,452,453],{"class":382}," Formatter: ",[112,455,419],{"class":401},[112,457,302],{"class":122},[112,459,419],{"class":401},[112,461,462],{"class":382}," (wraps ",[112,464,419],{"class":401},[112,466,467],{"class":122},"@antfu\u002Feslint-config",[112,469,419],{"class":401},[112,471,472],{"class":382},")\n",[112,474,476,478],{"class":114,"line":475},10,[112,477,450],{"class":401},[112,479,480],{"class":382}," No semicolons, single quotes, 2-space indent, trailing commas, LF line endings\n",[112,482,484,486,489,491,494,496,499,501,504],{"class":114,"line":483},11,[112,485,450],{"class":401},[112,487,488],{"class":382}," ESM only — never emit ",[112,490,419],{"class":401},[112,492,493],{"class":122},"require",[112,495,419],{"class":401},[112,497,498],{"class":382},"\u002F",[112,500,419],{"class":401},[112,502,503],{"class":122},"module.exports",[112,505,506],{"class":401},"`\n",[112,508,510,512],{"class":114,"line":509},12,[112,511,450],{"class":401},[112,513,514],{"class":382}," ...\n",[112,516,518],{"class":114,"line":517},13,[112,519,520],{"class":213},"\u003C!-- pleaseai-code-style:end -->\n",[112,522,524],{"class":114,"line":523},14,[112,525,389],{"emptyLinePlaceholder":388},[112,527,529],{"class":114,"line":528},15,[112,530,531],{"class":382},"My own content stays here untouched.\n",[56,533,534,535,537,538,540,541,543],{},"The CLI ",[224,536,226],{}," owns the content between the two marker comments — everything else in ",[59,539,65],{}," is preserved verbatim. Running ",[59,542,217],{}," twice in a row is a no-op; the block never duplicates.",[56,545,546,547,550],{},"The full canonical rules list is shipped as ",[59,548,549],{},"node_modules\u002F@pleaseai\u002Fcode-style\u002Frules.md"," for AI assistants that prefer to read the long version.",[87,552,554],{"id":553},"options","Options",[271,556,557,567],{},[274,558,559],{},[277,560,561,564],{},[280,562,563],{},"Flag",[280,565,566],{},"Description",[290,568,569,582,600,613],{},[277,570,571,579],{},[295,572,573,303,576],{},[59,574,575],{},"--yes",[59,577,578],{},"-y",[295,580,581],{},"Accept defaults and overwrite existing files without prompting",[277,583,584,589],{},[295,585,586],{},[59,587,588],{},"--lang \u003Cko|en>",[295,590,591,592,595,596,599],{},"Force the CLI locale (defaults to ",[59,593,594],{},"$LC_ALL"," \u002F ",[59,597,598],{},"$LANG",")",[277,601,602,610],{},[295,603,604,303,607],{},[59,605,606],{},"--help",[59,608,609],{},"-h",[295,611,612],{},"Print help",[277,614,615,623],{},[295,616,617,303,620],{},[59,618,619],{},"--version",[59,621,622],{},"-v",[295,624,625],{},"Print the CLI version",[87,627,629],{"id":628},"localisation","Localisation",[56,631,632,633,303,636,639,640,643,644,647,648,97],{},"The CLI auto-detects your locale from ",[59,634,635],{},"LC_ALL",[59,637,638],{},"LANG",", or ",[59,641,642],{},"LC_MESSAGES"," and currently ships Korean and English messages. Override with ",[59,645,646],{},"--lang ko"," or ",[59,649,650],{},"--lang en",[102,652,654],{"className":104,"code":653,"language":107,"meta":108,"style":108},"pleaseai-code-style --lang ko init\n",[59,655,656],{"__ignoreMap":108},[112,657,658,660,663,666],{"class":114,"line":115},[112,659,196],{"class":118},[112,661,662],{"class":122}," --lang",[112,664,665],{"class":122}," ko",[112,667,199],{"class":122},[87,669,671],{"id":670},"ci-usage","CI Usage",[56,673,674,675,677],{},"Combine ",[59,676,575],{}," with a locale override for a fully non-interactive invocation suitable for CI or project templates:",[102,679,681],{"className":104,"code":680,"language":107,"meta":108,"style":108},"pleaseai-code-style --yes --lang en init\n",[59,682,683],{"__ignoreMap":108},[112,684,685,687,689,691,694],{"class":114,"line":115},[112,686,196],{"class":118},[112,688,210],{"class":122},[112,690,662],{"class":122},[112,692,693],{"class":122}," en",[112,695,199],{"class":122},[56,697,698],{},"This accepts defaults for every tool, overwrites any existing config files, and uses English output.",[87,700,702],{"id":701},"binaries","Binaries",[56,704,705],{},"The package exposes two bin entries — use whichever you prefer:",[707,708,709,713],"ul",{},[159,710,711],{},[59,712,196],{},[159,714,715,718],{},[59,716,717],{},"please-style"," (short alias)",[56,720,721],{},"Both point to the same executable.",[723,724,725],"style",{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}",{"title":108,"searchDepth":202,"depth":202,"links":727},[728,729,734,735,737,738,739,740],{"id":89,"depth":202,"text":90},{"id":176,"depth":202,"text":177,"children":730},[731,732,733],{"id":181,"depth":392,"text":181},{"id":217,"depth":392,"text":217},{"id":248,"depth":392,"text":248},{"id":268,"depth":202,"text":269},{"id":360,"depth":202,"text":736},"The AGENTS.md Rules Block",{"id":553,"depth":202,"text":554},{"id":628,"depth":202,"text":629},{"id":670,"depth":202,"text":671},{"id":701,"depth":202,"text":702},"One-command setup for PleaseAI code style — installs packages and writes config files.",null,{},{"icon":45},{"title":42,"description":741},"1mXV1WMpvBNBbRVpQypCtl8KDgS2qUj-C-nSte3G0hg",[748,742],{"title":37,"path":38,"stem":39,"description":749,"icon":40,"children":-1},"Shared EditorConfig for consistent editor settings.",1776318162623]