noskills 4.1.33 → 4.1.35
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 +97 -14
- package/chunks/{approve-5N5LJ2WQ.js → approve-YXRIBZVV.js} +1 -1
- package/chunks/{ask-TR4ZPBU5.js → ask-4XOYE32R.js} +1 -1
- package/chunks/block-D67USBJS.js +1 -0
- package/chunks/{chunk-AT7V3AKV.js → chunk-24SANXOZ.js} +1 -1
- package/chunks/{chunk-6C2MLMD6.js → chunk-3AZBET4N.js} +1 -1
- package/chunks/{chunk-5ORUHRWF.js → chunk-3HRRWTVF.js} +1 -1
- package/chunks/{chunk-TGA7MX5P.js → chunk-42EQ3GZJ.js} +1 -1
- package/chunks/{chunk-HLQNHWXS.js → chunk-4ODVKO5Y.js} +1 -1
- package/chunks/{chunk-4IFPLK7L.js → chunk-EZH232V7.js} +1 -1
- package/chunks/{chunk-LZSLKXJE.js → chunk-GSYCN7EG.js} +2 -2
- package/chunks/{chunk-RVIPYZ7F.js → chunk-IR75X4G7.js} +1 -1
- package/chunks/{chunk-7ADGJB4H.js → chunk-IVSTITPL.js} +1 -1
- package/chunks/{chunk-AB4ZUDV6.js → chunk-LG5R766Y.js} +1 -1
- package/chunks/{chunk-ZS6ZJ4YL.js → chunk-O5KQZHIN.js} +1 -1
- package/chunks/chunk-UA3VIHYO.js +1 -0
- package/chunks/{chunk-OJUA2UZK.js → chunk-WUVVLUU5.js} +1 -1
- package/chunks/{chunk-KBNVVXFC.js → chunk-XCVAHUBM.js} +1 -1
- package/chunks/chunk-ZJVSE2FP.js +1 -0
- package/chunks/{chunk-LICLZJKZ.js → chunk-ZQ77HAFD.js} +1 -1
- package/chunks/{claude-code-3XV3QOZJ.js → claude-code-6AAAJZKK.js} +1 -1
- package/chunks/{concern-NGOU3XMP.js → concern-RHWJ53OJ.js} +1 -1
- package/chunks/{done-IBA3FUE5.js → done-PTJRZ26W.js} +1 -1
- package/chunks/init-FPQ6OYIO.js +1 -0
- package/chunks/{invoke-hook-7I6JMTL7.js → invoke-hook-MLGEIW5H.js} +1 -1
- package/chunks/{kiro-IXVNKPRT.js → kiro-MHP573OZ.js} +1 -1
- package/chunks/{list-UT3MSC6R.js → list-GRXQ2DIM.js} +1 -1
- package/chunks/{mod-LUIKS5KC.js → mod-V2Z6HGL6.js} +1 -1
- package/chunks/{next-CLXCFBD3.js → next-ZNQ3ICRE.js} +1 -1
- package/chunks/{ollama-K4QCYLVL.js → ollama-24ACY3UB.js} +1 -1
- package/chunks/{opencode-QBVD5FAD.js → opencode-LFWHRZPL.js} +1 -1
- package/chunks/{purge-RKZ7SY3Z.js → purge-JSAHNTXI.js} +1 -1
- package/chunks/{reset-VZO7YXM6.js → reset-CWI7K6GC.js} +1 -1
- package/chunks/{rule-YVHDEVR2.js → rule-GP665FCC.js} +1 -1
- package/chunks/{run-WYKDTQ3D.js → run-5XHWASUP.js} +1 -1
- package/chunks/{spec-RTBL43T7.js → spec-JET4WJSV.js} +1 -1
- package/chunks/{status-GQYCHJ2W.js → status-2POWAIVV.js} +1 -1
- package/chunks/{sync-JDMWRRGH.js → sync-RWNLL4VW.js} +1 -1
- package/chunks/{watch-7DNXJAAQ.js → watch-5OC7T473.js} +1 -1
- package/noskills.js +1 -1
- package/package.json +1 -1
- package/chunks/block-WWW3MXHP.js +0 -1
- package/chunks/chunk-2JVHW3XR.js +0 -1
- package/chunks/chunk-HS6FTDDW.js +0 -1
- package/chunks/init-BKS5VDTM.js +0 -1
package/chunks/init-BKS5VDTM.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as Z,b as ee,c as te}from"./chunk-ZS6ZJ4YL.js";import{a as S,b as F,e as T,f as J,g as N,h as r,i as h}from"./chunk-AB4ZUDV6.js";import{a as V}from"./chunk-2JVHW3XR.js";import{a as Q,b as X}from"./chunk-LICLZJKZ.js";import"./chunk-AGPCY6XP.js";import{a as P}from"./chunk-RVIPYZ7F.js";import{d as Y}from"./chunk-TGA7MX5P.js";import"./chunk-BLHOTPRB.js";import{a as B}from"./chunk-PSXXTDLU.js";import{a as I}from"./chunk-UXRWSNVZ.js";import{a as q,b as G,f as U,k as W,l as z,n as _,p as H,r as K}from"./chunk-OJUA2UZK.js";import"./chunk-4IFPLK7L.js";import"./chunk-5MN3MWQN.js";import"./chunk-OLM5RTFK.js";import{a as O}from"./chunk-LZSLKXJE.js";import{a as k}from"./chunk-2N4GTHXQ.js";import"./chunk-6C2MLMD6.js";import{a as d}from"./chunk-HS6FTDDW.js";import"./chunk-WV3HK5WR.js";import"./chunk-FDZP7B5Y.js";import"./chunk-ACQUINWH.js";import"./chunk-DXB73IDG.js";var de=new O({description:"AI provider interface \u2014 ask questions, generate content",modules:{ask:{description:"Send a prompt to an AI provider",load:()=>import("./ask-TR4ZPBU5.js")},list:{description:"List available AI providers",load:()=>import("./list-UT3MSC6R.js")}}});var oe=P;var ge=async t=>{try{return await d.fs.stat(t),!0}catch{return!1}},fe=[{id:"claude-code",paths:["CLAUDE.md",".claude"]},{id:"cursor",paths:[".cursorrules",".cursor"]},{id:"kiro",paths:[".kiro"]},{id:"copilot",paths:[".github/copilot-instructions.md"]},{id:"windsurf",paths:[".windsurfrules"]}],se=async t=>{let e=[];for(let n of fe)for(let o of n.paths)if(await ge(`${t}/${o}`)){e.push(n.id);break}return e};var a=async t=>{try{return await d.fs.stat(t),!0}catch{return!1}},ne=async(t,e)=>{try{let n=await d.fs.readTextFile(t);return JSON.parse(n)[e]??null}catch{return null}},he=async t=>{let e=[];return(await a(`${t}/package.json`)||await a(`${t}/deno.json`))&&e.push("typescript"),await a(`${t}/go.mod`)&&e.push("go"),await a(`${t}/Cargo.toml`)&&e.push("rust"),(await a(`${t}/pyproject.toml`)||await a(`${t}/setup.py`))&&e.push("python"),e},ye=async t=>{let e=[],n=await ne(`${t}/package.json`,"dependencies");return n!==null&&("react"in n&&e.push("react"),"vue"in n&&e.push("vue"),"svelte"in n&&e.push("svelte"),"next"in n&&e.push("nextjs"),"express"in n&&e.push("express"),"hono"in n&&e.push("hono")),e},we=async t=>{let e=[];return await a(`${t}/.github/workflows`)&&e.push("github-actions"),await a(`${t}/.gitlab-ci.yml`)&&e.push("gitlab-ci"),await a(`${t}/Jenkinsfile`)&&e.push("jenkins"),await a(`${t}/.circleci`)&&e.push("circleci"),e},be=async t=>{if(await a(`${t}/deno.json`))return"deno";let e=await ne(`${t}/package.json`,"devDependencies");if(e!==null){if("vitest"in e)return"vitest";if("jest"in e)return"jest";if("playwright"in e)return"playwright"}return null},ie=async t=>{let[e,n,o,u]=await Promise.all([he(t),ye(t),we(t),be(t)]);return{languages:e,frameworks:n,ci:o,testRunner:u}};var kt=async t=>{let e=d.process.cwd(),n=ee(t),o=F({target:n==="agent"?"non-interactive":"interactive"}),u=te(t),y=re(u,"--concerns"),f=re(u,"--tools"),p=u.includes("--non-interactive")||n==="agent";if(await K(e)){let s=await W(e);return r.warn(o,"noskills is already initialized in this project."),r.info(o,`Run \`${I("sync",s)}\` to regenerate tool files.`),k(void 0)}J(o,"noskills init");let A=h(o,"Scanning project...");A.start();let m=await ie(e);A.succeed("Project scanned");for(let s of m.languages)r.step(o,` ${s}`);for(let s of m.frameworks)r.step(o,` ${s}`);for(let s of m.ci)r.step(o,` ${s}`);m.testRunner!==null&&r.step(o,` test runner: ${m.testRunner}`);let $=h(o,"Detecting coding tools...");$.start();let R=await se(e),w=Z(),D=w!==null&&!R.includes(w)?[w]:[],b=[...new Set([...D,...R])];$.succeed(`${b.length} coding tool(s) detected`);for(let s of b){let i=s===w?" (current)":"";r.step(o,` ${s}${i}`)}let g;if(f!==null){let s=["claude-code","cursor","kiro","copilot","windsurf"],i=f.filter(c=>s.includes(c));g=[...new Set([...D,...i])]}else p?g=[...b]:g=await xe(o,b,w);let j=h(o,"Detecting AI providers...");j.start();let C=(await oe()).filter(s=>s.available).map(s=>s.name);j.succeed(`${C.length} provider(s) detected`);let x=await B(),l;if(y!==null){let s=x.map(i=>i.id);l=y.filter(i=>s.includes(i)).sort((i,c)=>s.indexOf(i)-s.indexOf(c))}else if(p)l=[];else{let s=x.map(c=>({value:c.id,label:c.name,hint:c.description.slice(0,60)})),i=await T(o,{message:"What kind of project is this? (space to toggle, enter to confirm)",options:s});l=S(i)?[]:[...i]}l.length>0?r.success(o,`Concerns: ${l.join(", ")}`):r.info(o,"No concerns selected. Add later with `concern add <id>`.");let M=ke(),E=h(o,"Initializing...");E.start(),await H(e);let ae=x.filter(s=>l.includes(s.id));for(let s of ae)await _(e,s);let v={...G(l,g,C,m),command:M};await z(e,v);let L=q();if(await U(e,L),E.succeed("Scaffolded `.eser/`"),g.length>0){let s=h(o,"Syncing tool files...");s.start();let i=await X(e,g,v);s.succeed(`Synced ${i.length} tool(s)`)}else r.warn(o,"No tools selected. noskills will work in agentless CLI mode only."),r.info(o,"Add tools later with `noskills sync`.");if(r.success(o,`Done. ${g.length} tool(s), ${C.length} provider(s), ${l.length} concern(s).`),r.info(o,`Command prefix: ${M}`),n==="agent"){let i=(await B()).filter(ce=>l.includes(ce.id)),c=await Q(e),le=V(L,i,c,v);await Y(le,"json")}else N(o,`Start a spec with: ${I('spec new "..."',v)}`);return k(void 0)},Ce=[{value:"claude-code",label:"Claude Code"},{value:"cursor",label:"Cursor"},{value:"kiro",label:"Kiro"},{value:"copilot",label:"GitHub Copilot"},{value:"windsurf",label:"Windsurf"}],xe=async(t,e,n)=>{let o=e.length===0?"No coding tools detected. Which tools do you use? (space to toggle)":"Any additional tools? (space to toggle, enter to skip)",u=new Set(e),y=await T(t,{message:o,options:Ce.map(p=>({...p,hint:p.value===n?"you're running inside it":u.has(p.value)?"detected":void 0,disabled:p.value===n})),initialValues:[...e],required:!1});if(S(y))return[...e];let f=[...y];return n!==null&&!f.includes(n)&&f.unshift(n),f},re=(t,e)=>{if(t===void 0)return null;for(let n of t)if(n.startsWith(`${e}=`))return n.slice(e.length+1).split(",").map(o=>o.trim()).filter(Boolean);return null},ke=()=>{try{let e=d.process.args.join(" ");if(e.includes("jsr:@eser/noskills"))return"deno run jsr:@eser/noskills";if(e.includes("noskills/main.ts"))return"deno run --allow-all ./pkg/@eser/noskills/main.ts";if(e.includes("eser")&&e.includes("nos")&&!e.includes("noskills"))return"eser nos";if(e.includes("eser")&&e.includes("noskills"))return"eser noskills"}catch{}return"npx eser noskills"};export{kt as main};
|