@reddb-io/red-skills 3.17.2 → 3.17.5

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.
@@ -1,16 +1,16 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire as __cr } from 'node:module'; const require = __cr(import.meta.url);
3
- import{spawn as R}from"node:child_process";import{isUtf8 as te}from"node:buffer";async function _(e,n=t=>t){let t=[],r=[];return e.stdout?.on("data",i=>t.push(Buffer.from(i))),e.stderr?.on("data",i=>r.push(Buffer.from(i))),await new Promise(i=>{let c=!1,s=async(a,o)=>{if(c)return;c=!0;let f=Buffer.concat(t),u=f;if(f.length>0&&te(f))try{u=await n(f)}catch{}if(process.stdout.write(u),process.stderr.write(Buffer.concat(r)),o){process.kill(process.pid,o),i(128);return}i(a??0)};e.once("error",a=>{r.push(Buffer.from(`${a instanceof Error?a.message:String(a)}
4
- `)),s(127,null)}),e.once("close",(a,o)=>void s(a,o))})}var re=new Set(["dashboard","stats","gains","show","git","gh","vitest","cargo","cat","exec","wait","doctor","status","sweep","setup","mcp","shell-init","server","warm-resident","gh-api-json","hook"]);function I(e){let n=e[0];if(!n||n.startsWith("-"))return n!=="--"||!e[1]?null:{kind:"argv",argv:[...e.slice(1)]};if(n==="proxy"){if(process.env.RSP_PROXY_FAIL_INTERNAL==="1")return null;let t=e.indexOf("--"),r=t>=0?e.slice(t+1):e.slice(1);if(r.length!==1||!r[0]?.trim())return null;let i=r[0];return ie(i)?null:{kind:"shell",commandLine:i}}return re.has(n)?null:{kind:"argv",argv:[...e]}}async function L(e,n){let t=e.kind==="argv"?R(e.argv[0],e.argv.slice(1),{stdio:["inherit","pipe","pipe"]}):R(e.commandLine,{shell:!0,stdio:["inherit","pipe","pipe"]});return await _(t,n)}function ie(e){return/(?:^|&&|\|\||[;|])\s*(?:(?:[A-Za-z_][A-Za-z0-9_]*=[^\s]+|env)\s+)*(?:git\s+(?:status|log|diff|show|blame|branch\s+-av)(?:\s|$)|gh\s+(?:pr|issue|run)\s+(?:list|view)(?:\s|$)|vitest(?:\s|$)|cargo\s+test(?:\s|$)|(?:cat|head|tail)\s+)/.test(e)}function F(e){let n={app:e,version:oe(x("__RED_BUILD_VERSION__",()=>"3.17.2")??"0.0.0-dev"),gitSha:x("__RED_BUILD_GIT_SHA__",()=>"d6bd626b465d58be821a38789c8d1c6a254dac03")??"unknown",buildTime:x("__RED_BUILD_TIME__",()=>"2026-08-12T16:04:33-03:00")??"unknown",bundleAsset:x("__RED_BUNDLE_ASSET__",()=>"rsp.bundle.min.mjs")??"unknown"},t=x("__REDDB_SDK_VERSION__",()=>"1.23.1"),r=x("__REDDB_BINARY_TAG__",()=>"v1.23.1");return t&&(n.reddbSdkVersion=t),r&&(n.reddbBinaryTag=r),n}function oe(e){return e.startsWith("v")?e.slice(1):e}function N(e){return`${e.app} ${e.version} ${e.gitSha}`}function x(e,n){try{let t=n();return typeof t=="string"&&t.length>0?t:void 0}catch{return process.env[e.replace(/^__|__$/g,"")]}}var D={"=":"data",":=":{to:"data",typed:!0},":":"meta"},se=/^[a-z][a-z0-9+.-]*:\/\//i;function ce(e,n){return typeof n=="string"?{separator:e,to:n,typed:!1,prefix:!1}:{separator:e,to:n.to,typed:n.typed??!1,prefix:n.prefix??!1}}function ae(e=D){return Object.entries(e).map(([n,t])=>ce(n,t)).sort((n,t)=>t.separator.length-n.separator.length)}function ue(e){return/^-\d+(\.\d+)?$/.test(e)}function O(e){return!(!e||e.startsWith("-")&&!ue(e))}function k(e){if(e==="true")return!0;if(e==="false")return!1;if(e==="null")return null;let n=Number(e);return!Number.isNaN(n)&&Number.isFinite(n)&&e.trim()!==""?n:e}function P(e){if(e==="true")return!0;if(e==="false")return!1;if(e==="null")return null;if(e.startsWith("[")&&e.endsWith("]")||e.startsWith("{")&&e.endsWith("}"))try{return JSON.parse(e)}catch{}let n=Number(e);return!Number.isNaN(n)&&Number.isFinite(n)&&e.trim()!==""?n:e.includes(",")?e.split(",").map(t=>P(t.trim())):e}function w(e,n){switch(n){case"boolean":return fe(e);case"number":return le(e);case"array":return e.split(",").map(t=>k(t.trim()));case"string":default:return e}}function fe(e){let n=e.toLowerCase().trim();return n==="true"||n==="yes"||n==="1"||n==="on"}function le(e){if(e.trim()==="")throw new TypeError(`Cannot convert "${e}" to number`);let n=Number(e);if(Number.isNaN(n))throw new TypeError(`Cannot convert "${e}" to number`);return n}function b(e){return e.startsWith('"')&&e.endsWith('"')||e.startsWith("'")&&e.endsWith("'")?e.slice(1,-1):e}function de(e,n={}){return e.map(t=>{let r=n[t.type];return r?r(t.value):t.value}).join("")}function d(e,n){return{type:e,value:n}}function pe(e){let n=[],t=me(e);if(n.push(d("section-header","Usage:"),d("text"," "),d("usage-text",t),d("newline",`
3
+ import{spawn as L}from"node:child_process";import{isUtf8 as te}from"node:buffer";async function _(e,n=t=>t){let t=[],r=[];return e.stdout?.on("data",i=>t.push(Buffer.from(i))),e.stderr?.on("data",i=>r.push(Buffer.from(i))),await new Promise(i=>{let c=!1,o=async(a,s)=>{if(c)return;c=!0;let l=Buffer.concat(t),u=l;if(l.length>0&&te(l))try{u=await n(l)}catch{}if(process.stdout.write(u),process.stderr.write(Buffer.concat(r)),s){process.kill(process.pid,s),i(128);return}i(a??0)};e.once("error",a=>{r.push(Buffer.from(`${a instanceof Error?a.message:String(a)}
4
+ `)),o(127,null)}),e.once("close",(a,s)=>void o(a,s))})}var re=new Set(["dashboard","stats","gains","show","git","gh","vitest","cargo","cat","exec","wait","doctor","status","sweep","setup","mcp","shell-init","server","warm-resident","gh-api-json","hook"]);function R(e){let n=e[0];if(n==="--full"||n==="--brief"||n==="--terse")return e[1]!=="--"||!e[2]?null:{kind:"argv",argv:[...e.slice(2)],level:n.slice(2)};if(!n||n.startsWith("-"))return n!=="--"||!e[1]?null:{kind:"argv",argv:[...e.slice(1)],level:"automatic"};if(n==="proxy"){if(process.env.RSP_PROXY_FAIL_INTERNAL==="1")return null;let t=e.indexOf("--"),r=t>=0?e.slice(1,t):[];if(r.some(a=>a!=="--full"&&a!=="--brief"&&a!=="--terse"))return null;let i=t>=0?e.slice(t+1):e.slice(1);if(i.length!==1||!i[0]?.trim())return null;let c=i[0];if(ie(c))return null;let o=r.includes("--terse")?"terse":r.includes("--brief")?"brief":r.includes("--full")?"full":"automatic";return{kind:"shell",commandLine:c,level:o}}return re.has(n)?null:{kind:"argv",argv:[...e],level:"automatic"}}async function I(e,n){let t=e.kind==="argv"?L(e.argv[0],e.argv.slice(1),{stdio:["inherit","pipe","pipe"]}):L(e.commandLine,{shell:!0,stdio:["inherit","pipe","pipe"]});return await _(t,n)}function ie(e){return/(?:^|&&|\|\||[;|])\s*(?:(?:[A-Za-z_][A-Za-z0-9_]*=[^\s]+|env)\s+)*(?:git\s+(?:status|log|diff|show|blame|branch\s+-av)(?:\s|$)|gh\s+(?:pr|issue|run)\s+(?:list|view)(?:\s|$)|vitest(?:\s|$)|cargo\s+test(?:\s|$)|(?:cat|head|tail)\s+)/.test(e)}function F(e){let n={app:e,version:oe(x("__RED_BUILD_VERSION__",()=>"3.17.5")??"0.0.0-dev"),gitSha:x("__RED_BUILD_GIT_SHA__",()=>"1b8c7bb79f64279b5e326439de06c5c0d7ea8db9")??"unknown",buildTime:x("__RED_BUILD_TIME__",()=>"2026-08-12T19:33:46-03:00")??"unknown",bundleAsset:x("__RED_BUNDLE_ASSET__",()=>"rsp.bundle.min.mjs")??"unknown"},t=x("__REDDB_SDK_VERSION__",()=>"1.23.1"),r=x("__REDDB_BINARY_TAG__",()=>"v1.23.1");return t&&(n.reddbSdkVersion=t),r&&(n.reddbBinaryTag=r),n}function oe(e){return e.startsWith("v")?e.slice(1):e}function N(e){return`${e.app} ${e.version} ${e.gitSha}`}function x(e,n){try{let t=n();return typeof t=="string"&&t.length>0?t:void 0}catch{return process.env[e.replace(/^__|__$/g,"")]}}var D={"=":"data",":=":{to:"data",typed:!0},":":"meta"},se=/^[a-z][a-z0-9+.-]*:\/\//i;function ce(e,n){return typeof n=="string"?{separator:e,to:n,typed:!1,prefix:!1}:{separator:e,to:n.to,typed:n.typed??!1,prefix:n.prefix??!1}}function ae(e=D){return Object.entries(e).map(([n,t])=>ce(n,t)).sort((n,t)=>t.separator.length-n.separator.length)}function ue(e){return/^-\d+(\.\d+)?$/.test(e)}function O(e){return!(!e||e.startsWith("-")&&!ue(e))}function k(e){if(e==="true")return!0;if(e==="false")return!1;if(e==="null")return null;let n=Number(e);return!Number.isNaN(n)&&Number.isFinite(n)&&e.trim()!==""?n:e}function P(e){if(e==="true")return!0;if(e==="false")return!1;if(e==="null")return null;if(e.startsWith("[")&&e.endsWith("]")||e.startsWith("{")&&e.endsWith("}"))try{return JSON.parse(e)}catch{}let n=Number(e);return!Number.isNaN(n)&&Number.isFinite(n)&&e.trim()!==""?n:e.includes(",")?e.split(",").map(t=>P(t.trim())):e}function w(e,n){switch(n){case"boolean":return le(e);case"number":return fe(e);case"array":return e.split(",").map(t=>k(t.trim()));case"string":default:return e}}function le(e){let n=e.toLowerCase().trim();return n==="true"||n==="yes"||n==="1"||n==="on"}function fe(e){if(e.trim()==="")throw new TypeError(`Cannot convert "${e}" to number`);let n=Number(e);if(Number.isNaN(n))throw new TypeError(`Cannot convert "${e}" to number`);return n}function b(e){return e.startsWith('"')&&e.endsWith('"')||e.startsWith("'")&&e.endsWith("'")?e.slice(1,-1):e}function de(e,n={}){return e.map(t=>{let r=n[t.type];return r?r(t.value):t.value}).join("")}function d(e,n){return{type:e,value:n}}function pe(e){let n=[],t=he(e);if(n.push(d("section-header","Usage:"),d("text"," "),d("usage-text",t),d("newline",`
5
5
  `),d("newline",`
6
6
  `)),e.positional&&e.positional.length>0){n.push(d("section-header","Arguments:"),d("newline",`
7
7
  `));for(let r of e.positional)if(r.description){let i=r.variadic?`${r.name}...`:r.name;n.push(d("indent"," "),d("positional-name",`<${i}>`)),r.required||n.push(d("positional-optional"," (optional)")),n.push(d("newline",`
8
8
  `),d("indent"," "),d("option-description",r.description),d("newline",`
9
9
  `))}n.push(d("newline",`
10
10
  `))}if(e.options&&Object.keys(e.options).length>0){n.push(d("section-header","Options:"),d("newline",`
11
- `));let r=ye(e.options);n.push(...r)}return n}function he(e,n){let t=pe(e);return de(t,n)}function me(e){let n=["[options]"];if(e.positional)for(let t of e.positional)t.variadic?n.push(t.required?`<${t.name}...>`:`[${t.name}...]`):n.push(t.required?`<${t.name}>`:`[${t.name}]`);return n.join(" ")}function ye(e,n=!1){let t=[],r=[],i=n?"global-option-flag":"option-flag",c=n?"global-option-type":"option-type",s=n?"global-option-default":"option-default",a=n?"global-option-description":"option-description";for(let[f,u]of Object.entries(e)){if(u.hidden)continue;let h=[],l=y=>{h.includes(y)||h.push(y)};u.short&&l(`-${u.short}`),l(`--${f}`);for(let y of u.aliases??[])y.length===1?l(`-${y}`):l(`--${y}`);let m=h.join(", "),g=u.type&&u.type!=="boolean"?`<${u.type}>`:void 0;r.push({flags:m,type:g,desc:u.description??"",default:u.default!==void 0?String(u.default):void 0})}let o=Math.max(...r.map(f=>f.flags.length+(f.type?f.type.length+1:0)),20);for(let f of r){let u=f.flags.length+(f.type?f.type.length+1:0),h=" ".repeat(o-u+2);t.push(d("indent"," ")),t.push(d(i,f.flags)),f.type&&(t.push(d("text"," ")),t.push(d(c,f.type))),t.push(d("text",h)),t.push(d(a,f.desc)),f.default!==void 0&&(t.push(d("text"," ")),t.push(d(s,`(default: ${f.default})`))),t.push(d("newline",`
12
- `))}return t}function M(e){let n=$e(e.options??{},e.autoShort??!1),t=ae(e.separators??D);return{schema:e,parse(r){return ge(r,e,n,t)},help(){return he(e,e.formatter)}}}function ge(e,n,t,r){let i={positional:{},options:{},errors:[],rest:[]},c=new Set(r.map(u=>u.to));for(let u of c)i[u]={};let s=0,a=n.positional??[],o=0,f=!1;for(;o<e.length;){let u=e[o];if(n.stopEarly&&s>0){i.rest=e.slice(o);break}if(u==="--"&&!f){f=!0,o++;continue}if(f){if(s<a.length){let l=a[s];if(l.variadic){let m=[];for(;o<e.length;){let g=e[o];m.push(l.type?w(g,l.type):g),o++}i.positional[l.name]=m,s++}else{let m=l.type?w(u,l.type):u;i.positional[l.name]=m,s++,o++}}else n.allowUnknown!==!1&&(i.rest=i.rest??[],i.rest.push(u)),o++;continue}if(u.startsWith("--")){o=Oe(u,o,e,i,t,n);continue}if(u.startsWith("-")&&u.length>1&&!Ae(u)){o=ke(u,o,e,i,t,n);continue}let h=be(u,r);if(h){let{key:l,value:m,config:g}=h,y=i,ne=y[g.to]??(y[g.to]={});ne[l]=g.typed?P(m):b(m),o++;continue}if(s<a.length){let l=a[s];if(l.variadic){let g=[];for(;o<e.length&&!e[o].startsWith("-");){let y=e[o];g.push(l.type?w(y,l.type):y),o++}i.positional[l.name]=g,s++;continue}let m=l.type?w(u,l.type):u;i.positional[l.name]=m,s++}else n.allowUnknown!==!1?i.rest.push(u):i.errors.push(`Unexpected positional argument: ${u}`);o++}return Te(i,n,t),Ee(i,n,a),ve(i,n,t),i}function be(e,n){if(se.test(e))return null;for(let t of n){if(t.prefix&&e.startsWith(t.separator)){let i=e.slice(t.separator.length),c=i.indexOf(":");if(c>0){let s=i.slice(0,c),a=i.slice(c+1);if(we(s))return{key:s,value:a,config:t}}continue}let r=e.indexOf(t.separator);if(r>0){let i=e.slice(0,r),c=e.slice(r+t.separator.length);if(xe(i,c,t))return{key:i,value:c,config:t}}}return null}function we(e){return e?/^[a-zA-Z_][a-zA-Z0-9_-]*$/.test(e):!1}function xe(e,n,t){return e?t.separator===":"?e.includes("/")||e.includes(".")||/^\d+$/.test(n)?!1:/^[A-Z][a-zA-Z0-9-]*$/.test(e):!((t.separator==="="||t.separator===":=")&&e.includes("/")):!1}function Oe(e,n,t,r,i,c){let s=e.slice(2);if(s.startsWith("no-")){let o=s.slice(3),f=i.get(o);if(f?.negatable!==!1&&f?.type==="boolean")return r.options[f.name]=!1,n+1}if(s.includes("=")){let o=s.indexOf("="),f=s.slice(0,o),u=s.slice(o+1);return $(f,u,n+1,r,i,c)}let a=i.get(s);if(a){if(a.type!=="boolean"){let o=t[n+1];return O(o)?$(a.name,o,n+2,r,i,c):(r.errors.push(`Option --${s} requires a value`),n+1)}return r.options[a.name]=!0,n+1}return c.strict?r.errors.push(`Unknown option: --${s}`):c.allowUnknown!==!1&&(r.options[s]=!0),n+1}function ke(e,n,t,r,i,c){let s=e.slice(1);if(s.includes("=")){let a=s.indexOf("="),o=s.slice(0,a),f=s.slice(a+1),u=v(o,i);return u?$(u.name,f,n+1,r,i,c):(c.strict?r.errors.push(`Unknown option: -${o}`):c.allowUnknown!==!1&&(r.options[o]=k(b(f))),n+1)}if(s.length===1){let a=v(s,i);if(a){if(a.type!=="boolean"){let o=t[n+1];return O(o)?$(a.name,o,n+2,r,i,c):(r.errors.push(`Option -${s} requires a value`),n+1)}return r.options[a.name]=!0,n+1}if(c.strict)r.errors.push(`Unknown option: -${s}`);else if(c.allowUnknown!==!1){let o=t[n+1];if(O(o))return r.options[s]=k(b(o)),n+2;r.options[s]=!0}return n+1}for(let a of s){let o=v(a,i);o?o.type==="boolean"?r.options[o.name]=!0:r.errors.push(`Option -${a} requires a value`):c.strict?r.errors.push(`Unknown option: -${a}`):c.allowUnknown!==!1&&(r.options[a]=!0)}return n+1}function $(e,n,t,r,i,c){let s=i.get(e);if(s){if(s.choices){let o=s.type?w(b(n),s.type):b(n);if(!s.choices.includes(o))return r.errors.push(`Invalid value for '${e}': '${n}'. Allowed: ${s.choices.join(", ")}`),t}let a=s.type?w(b(n),s.type):b(n);if(s.type==="array"){let o=r.options[e];Array.isArray(o)?o.push(...a):r.options[e]=a}else r.options[e]=a}else c.strict?r.errors.push(`Unknown option: --${e}`):c.allowUnknown!==!1&&(r.options[e]=k(b(n)));return t}function $e(e,n=!1){let t=new Map,r=Object.entries(e).sort(([c],[s])=>c.localeCompare(s)),i=new Set;for(let[,c]of r)c.short&&i.add(c.short);for(let[c,s]of r){let a=s.short??"";n&&!a&&(a=Se(c,i),a&&i.add(a));let o={name:c,short:a,aliases:s.aliases??[],type:s.type??"string",description:s.description??"",required:s.required??!1,hidden:s.hidden??!1,negatable:s.negatable??!0,default:s.default,choices:s.choices,env:s.env,validate:s.validate};t.set(c,o);for(let f of o.aliases)t.set(f,o)}return t}function Se(e,n){for(let t of e){if(!/[a-zA-Z]/.test(t))continue;let r=t.toLowerCase();if(!n.has(r))return r;let i=t.toUpperCase();if(!n.has(i))return i}return""}function v(e,n){for(let t of n.values())if(t.short===e||t.aliases.includes(e))return t}function Te(e,n,t){for(let r of t.values())if(e.options[r.name]===void 0)if(r.env&&process.env[r.env]!==void 0){let i=process.env[r.env];e.options[r.name]=r.type?w(i,r.type):i}else r.default!==void 0&&(e.options[r.name]=r.default);for(let r of n.positional??[])e.positional[r.name]===void 0&&r.default!==void 0&&(e.positional[r.name]=r.default)}function Ee(e,n,t){if(n.options)for(let[r,i]of Object.entries(n.options))i.required&&e.options[r]===void 0&&e.errors.push(`Missing required option: --${r}`);for(let r of t)r.required&&e.positional[r.name]===void 0&&e.errors.push(`Missing required argument: <${r.name}>`)}function ve(e,n,t){for(let r of t.values()){let i=e.options[r.name];if(r.validate&&i!==void 0){let c=r.validate(i);c!==!0&&e.errors.push(c)}}for(let r of n.positional??[]){let i=e.positional[r.name];if(r.validate&&i!==void 0){let c=r.validate(i);c!==!0&&e.errors.push(c)}}}function Ae(e){return/^-\d+(\.\d+)?$/.test(e)}var A=class extends Error{flag;known;constructor(n,t){super(`unknown flag '${n}'; expected one of: ${t.join(", ")}`),this.name="UnknownFlagError",this.flag=n,this.known=t}};function Ce(e){let n={};for(let[t,r]of Object.entries(e))n[t]={type:r.kind==="boolean"?"boolean":"string",...t.length===1?{short:t}:{},...r.aliases===void 0?{}:{aliases:r.aliases}};return n}function je(e,n){let t=new Map;for(let[i,c]of Object.entries(n))if(!(c.kind!=="value"||c.type!=="array")){t.set(i,i);for(let s of c.aliases??[])t.set(s,i)}let r=new Map;for(let i=0;i<e.length;i+=1){let c=e[i];if(c==="--")break;let s=c.match(/^--([^=]+)(?:=(.*))?$/)??c.match(/^-([^=])(?:=(.*))?$/);if(s===null)continue;let a=t.get(s[1]);if(a===void 0)continue;let o=s[2];if(o===void 0&&O(e[i+1])&&(o=e[i+1],i+=1),o===void 0)continue;let f=r.get(a)??[];f.push(o),r.set(a,f)}return r}function W(e,n,t={}){let i=M({options:Ce(n),separators:{},allowUnknown:!0}).parse([...e]),c={},s=je(e,n),a=i.errors.find(o=>/^Option --?\S+ requires a value$/.test(o));if(a!==void 0)throw new Error(a.replace(/^Option /,""));if(i.errors.length>0)throw new Error(i.errors[0]);if(t.unknownFlags==="error"){let o=new Set(Object.keys(n));for(let f of Object.keys(i.options))if(!o.has(f))throw new A(f.length===1?`-${f}`:`--${f}`,Object.keys(n).map(u=>u.length===1?`-${u}`:`--${u}`))}for(let[o,f]of Object.entries(n)){let u=i.options[o];u!==void 0&&(f.kind==="boolean"?c[o]=u:f.type==="array"?c[o]=(s.get(o)??[]).map(h=>f.coerce(h)):c[o]=f.coerce(String(u)))}return{values:c,positionals:i.rest}}var _e=/^--([^=]+)(?:=([\s\S]*))?$/,Re=/^-([^-=])(?:=([\s\S]*))?$/;function Ie(e){let n=new Map;for(let[t,r]of Object.entries(e)){n.set(t,t);for(let i of r.aliases??[])n.set(i,t)}return n}function U(e,n,t={}){let r=Ie(n),i=t.stopAtSeparator??!0,c={},s=[];for(let a=0;a<e.length;a+=1){let o=e[a];if(o==="--"&&i){s.push(...e.slice(a));break}let f=_e.exec(o)??Re.exec(o),u=f===null?void 0:r.get(f[1]),h=u===void 0?void 0:n[u];if(u===void 0||h===void 0){s.push(o);continue}if(h.kind==="boolean"){c[u]=!0;continue}let l=f[2];if(l===void 0&&O(e[a+1])&&(l=e[a+1],a+=1),l===void 0)throw new Error(`${o} requires a value`);if(h.type==="array"){let m=c[u]??[];m.push(h.coerce(l)),c[u]=m}else c[u]=h.coerce(l)}return{values:c,rest:s}}var S=class extends Error{token;known;constructor(n,t){super(`unknown command '${n}'; expected one of: ${t.join(", ")}`),this.name="UnknownCommandError",this.token=n,this.known=t}};function B(e,n){let[t,...r]=e;if(t!==void 0){for(let[c,s]of Object.entries(n.commands))if(t===c||(s.aliases??[]).includes(t))return{command:c,args:r};if(n.errorOnUnknownCommand&&!t.startsWith("-"))throw new S(t,Object.keys(n.commands))}let i=n.keepArgvOnDefault??!0;return{command:n.default,args:i?[...e]:r}}var z={comma:",",tab:" ",pipe:"|"},Le=z.comma;var Tn=Symbol("need line");var zn=Symbol("unset");var Tt=new TextEncoder,Et=new TextDecoder;var Ve={"store-uri":{kind:"value",coerce:e=>e},brief:{kind:"boolean"},terse:{kind:"boolean"},query:{kind:"value",coerce:e=>e}},He={json:{kind:"boolean"}},Ke={help:{kind:"boolean",aliases:["h"]}};function Q(e){let{command:n,args:t}=B(e,Ge);return n==="--version"?{kind:"version",json:W(t,He).values.json===!0}:Ze(e)?{kind:"help"}:{kind:"command"}}var Ge={commands:{"--version":{aliases:["-v"]},run:{}},default:"run",keepArgvOnDefault:!0};function Ze(e){return U(e,Ke).values.help===!0}var Tr=Object.keys(Ve).map(e=>`--${e}`);function X(e){let n=e[0]==="--help"||e[0]==="-h"?void 0:e[0];return`${Je(n).join(`
11
+ `));let r=ye(e.options);n.push(...r)}return n}function me(e,n){let t=pe(e);return de(t,n)}function he(e){let n=["[options]"];if(e.positional)for(let t of e.positional)t.variadic?n.push(t.required?`<${t.name}...>`:`[${t.name}...]`):n.push(t.required?`<${t.name}>`:`[${t.name}]`);return n.join(" ")}function ye(e,n=!1){let t=[],r=[],i=n?"global-option-flag":"option-flag",c=n?"global-option-type":"option-type",o=n?"global-option-default":"option-default",a=n?"global-option-description":"option-description";for(let[l,u]of Object.entries(e)){if(u.hidden)continue;let m=[],f=y=>{m.includes(y)||m.push(y)};u.short&&f(`-${u.short}`),f(`--${l}`);for(let y of u.aliases??[])y.length===1?f(`-${y}`):f(`--${y}`);let h=m.join(", "),g=u.type&&u.type!=="boolean"?`<${u.type}>`:void 0;r.push({flags:h,type:g,desc:u.description??"",default:u.default!==void 0?String(u.default):void 0})}let s=Math.max(...r.map(l=>l.flags.length+(l.type?l.type.length+1:0)),20);for(let l of r){let u=l.flags.length+(l.type?l.type.length+1:0),m=" ".repeat(s-u+2);t.push(d("indent"," ")),t.push(d(i,l.flags)),l.type&&(t.push(d("text"," ")),t.push(d(c,l.type))),t.push(d("text",m)),t.push(d(a,l.desc)),l.default!==void 0&&(t.push(d("text"," ")),t.push(d(o,`(default: ${l.default})`))),t.push(d("newline",`
12
+ `))}return t}function M(e){let n=$e(e.options??{},e.autoShort??!1),t=ae(e.separators??D);return{schema:e,parse(r){return ge(r,e,n,t)},help(){return me(e,e.formatter)}}}function ge(e,n,t,r){let i={positional:{},options:{},errors:[],rest:[]},c=new Set(r.map(u=>u.to));for(let u of c)i[u]={};let o=0,a=n.positional??[],s=0,l=!1;for(;s<e.length;){let u=e[s];if(n.stopEarly&&o>0){i.rest=e.slice(s);break}if(u==="--"&&!l){l=!0,s++;continue}if(l){if(o<a.length){let f=a[o];if(f.variadic){let h=[];for(;s<e.length;){let g=e[s];h.push(f.type?w(g,f.type):g),s++}i.positional[f.name]=h,o++}else{let h=f.type?w(u,f.type):u;i.positional[f.name]=h,o++,s++}}else n.allowUnknown!==!1&&(i.rest=i.rest??[],i.rest.push(u)),s++;continue}if(u.startsWith("--")){s=Oe(u,s,e,i,t,n);continue}if(u.startsWith("-")&&u.length>1&&!Ae(u)){s=ke(u,s,e,i,t,n);continue}let m=be(u,r);if(m){let{key:f,value:h,config:g}=m,y=i,ne=y[g.to]??(y[g.to]={});ne[f]=g.typed?P(h):b(h),s++;continue}if(o<a.length){let f=a[o];if(f.variadic){let g=[];for(;s<e.length&&!e[s].startsWith("-");){let y=e[s];g.push(f.type?w(y,f.type):y),s++}i.positional[f.name]=g,o++;continue}let h=f.type?w(u,f.type):u;i.positional[f.name]=h,o++}else n.allowUnknown!==!1?i.rest.push(u):i.errors.push(`Unexpected positional argument: ${u}`);s++}return ve(i,n,t),Te(i,n,a),Ee(i,n,t),i}function be(e,n){if(se.test(e))return null;for(let t of n){if(t.prefix&&e.startsWith(t.separator)){let i=e.slice(t.separator.length),c=i.indexOf(":");if(c>0){let o=i.slice(0,c),a=i.slice(c+1);if(we(o))return{key:o,value:a,config:t}}continue}let r=e.indexOf(t.separator);if(r>0){let i=e.slice(0,r),c=e.slice(r+t.separator.length);if(xe(i,c,t))return{key:i,value:c,config:t}}}return null}function we(e){return e?/^[a-zA-Z_][a-zA-Z0-9_-]*$/.test(e):!1}function xe(e,n,t){return e?t.separator===":"?e.includes("/")||e.includes(".")||/^\d+$/.test(n)?!1:/^[A-Z][a-zA-Z0-9-]*$/.test(e):!((t.separator==="="||t.separator===":=")&&e.includes("/")):!1}function Oe(e,n,t,r,i,c){let o=e.slice(2);if(o.startsWith("no-")){let s=o.slice(3),l=i.get(s);if(l?.negatable!==!1&&l?.type==="boolean")return r.options[l.name]=!1,n+1}if(o.includes("=")){let s=o.indexOf("="),l=o.slice(0,s),u=o.slice(s+1);return $(l,u,n+1,r,i,c)}let a=i.get(o);if(a){if(a.type!=="boolean"){let s=t[n+1];return O(s)?$(a.name,s,n+2,r,i,c):(r.errors.push(`Option --${o} requires a value`),n+1)}return r.options[a.name]=!0,n+1}return c.strict?r.errors.push(`Unknown option: --${o}`):c.allowUnknown!==!1&&(r.options[o]=!0),n+1}function ke(e,n,t,r,i,c){let o=e.slice(1);if(o.includes("=")){let a=o.indexOf("="),s=o.slice(0,a),l=o.slice(a+1),u=E(s,i);return u?$(u.name,l,n+1,r,i,c):(c.strict?r.errors.push(`Unknown option: -${s}`):c.allowUnknown!==!1&&(r.options[s]=k(b(l))),n+1)}if(o.length===1){let a=E(o,i);if(a){if(a.type!=="boolean"){let s=t[n+1];return O(s)?$(a.name,s,n+2,r,i,c):(r.errors.push(`Option -${o} requires a value`),n+1)}return r.options[a.name]=!0,n+1}if(c.strict)r.errors.push(`Unknown option: -${o}`);else if(c.allowUnknown!==!1){let s=t[n+1];if(O(s))return r.options[o]=k(b(s)),n+2;r.options[o]=!0}return n+1}for(let a of o){let s=E(a,i);s?s.type==="boolean"?r.options[s.name]=!0:r.errors.push(`Option -${a} requires a value`):c.strict?r.errors.push(`Unknown option: -${a}`):c.allowUnknown!==!1&&(r.options[a]=!0)}return n+1}function $(e,n,t,r,i,c){let o=i.get(e);if(o){if(o.choices){let s=o.type?w(b(n),o.type):b(n);if(!o.choices.includes(s))return r.errors.push(`Invalid value for '${e}': '${n}'. Allowed: ${o.choices.join(", ")}`),t}let a=o.type?w(b(n),o.type):b(n);if(o.type==="array"){let s=r.options[e];Array.isArray(s)?s.push(...a):r.options[e]=a}else r.options[e]=a}else c.strict?r.errors.push(`Unknown option: --${e}`):c.allowUnknown!==!1&&(r.options[e]=k(b(n)));return t}function $e(e,n=!1){let t=new Map,r=Object.entries(e).sort(([c],[o])=>c.localeCompare(o)),i=new Set;for(let[,c]of r)c.short&&i.add(c.short);for(let[c,o]of r){let a=o.short??"";n&&!a&&(a=Se(c,i),a&&i.add(a));let s={name:c,short:a,aliases:o.aliases??[],type:o.type??"string",description:o.description??"",required:o.required??!1,hidden:o.hidden??!1,negatable:o.negatable??!0,default:o.default,choices:o.choices,env:o.env,validate:o.validate};t.set(c,s);for(let l of s.aliases)t.set(l,s)}return t}function Se(e,n){for(let t of e){if(!/[a-zA-Z]/.test(t))continue;let r=t.toLowerCase();if(!n.has(r))return r;let i=t.toUpperCase();if(!n.has(i))return i}return""}function E(e,n){for(let t of n.values())if(t.short===e||t.aliases.includes(e))return t}function ve(e,n,t){for(let r of t.values())if(e.options[r.name]===void 0)if(r.env&&process.env[r.env]!==void 0){let i=process.env[r.env];e.options[r.name]=r.type?w(i,r.type):i}else r.default!==void 0&&(e.options[r.name]=r.default);for(let r of n.positional??[])e.positional[r.name]===void 0&&r.default!==void 0&&(e.positional[r.name]=r.default)}function Te(e,n,t){if(n.options)for(let[r,i]of Object.entries(n.options))i.required&&e.options[r]===void 0&&e.errors.push(`Missing required option: --${r}`);for(let r of t)r.required&&e.positional[r.name]===void 0&&e.errors.push(`Missing required argument: <${r.name}>`)}function Ee(e,n,t){for(let r of t.values()){let i=e.options[r.name];if(r.validate&&i!==void 0){let c=r.validate(i);c!==!0&&e.errors.push(c)}}for(let r of n.positional??[]){let i=e.positional[r.name];if(r.validate&&i!==void 0){let c=r.validate(i);c!==!0&&e.errors.push(c)}}}function Ae(e){return/^-\d+(\.\d+)?$/.test(e)}var A=class extends Error{flag;known;constructor(n,t){super(`unknown flag '${n}'; expected one of: ${t.join(", ")}`),this.name="UnknownFlagError",this.flag=n,this.known=t}};function Ce(e){let n={};for(let[t,r]of Object.entries(e))n[t]={type:r.kind==="boolean"?"boolean":"string",...t.length===1?{short:t}:{},...r.aliases===void 0?{}:{aliases:r.aliases}};return n}function je(e,n){let t=new Map;for(let[i,c]of Object.entries(n))if(!(c.kind!=="value"||c.type!=="array")){t.set(i,i);for(let o of c.aliases??[])t.set(o,i)}let r=new Map;for(let i=0;i<e.length;i+=1){let c=e[i];if(c==="--")break;let o=c.match(/^--([^=]+)(?:=(.*))?$/)??c.match(/^-([^=])(?:=(.*))?$/);if(o===null)continue;let a=t.get(o[1]);if(a===void 0)continue;let s=o[2];if(s===void 0&&O(e[i+1])&&(s=e[i+1],i+=1),s===void 0)continue;let l=r.get(a)??[];l.push(s),r.set(a,l)}return r}function W(e,n,t={}){let i=M({options:Ce(n),separators:{},allowUnknown:!0}).parse([...e]),c={},o=je(e,n),a=i.errors.find(s=>/^Option --?\S+ requires a value$/.test(s));if(a!==void 0)throw new Error(a.replace(/^Option /,""));if(i.errors.length>0)throw new Error(i.errors[0]);if(t.unknownFlags==="error"){let s=new Set(Object.keys(n));for(let l of Object.keys(i.options))if(!s.has(l))throw new A(l.length===1?`-${l}`:`--${l}`,Object.keys(n).map(u=>u.length===1?`-${u}`:`--${u}`))}for(let[s,l]of Object.entries(n)){let u=i.options[s];u!==void 0&&(l.kind==="boolean"?c[s]=u:l.type==="array"?c[s]=(o.get(s)??[]).map(m=>l.coerce(m)):c[s]=l.coerce(String(u)))}return{values:c,positionals:i.rest}}var _e=/^--([^=]+)(?:=([\s\S]*))?$/,Le=/^-([^-=])(?:=([\s\S]*))?$/;function Re(e){let n=new Map;for(let[t,r]of Object.entries(e)){n.set(t,t);for(let i of r.aliases??[])n.set(i,t)}return n}function U(e,n,t={}){let r=Re(n),i=t.stopAtSeparator??!0,c={},o=[];for(let a=0;a<e.length;a+=1){let s=e[a];if(s==="--"&&i){o.push(...e.slice(a));break}let l=_e.exec(s)??Le.exec(s),u=l===null?void 0:r.get(l[1]),m=u===void 0?void 0:n[u];if(u===void 0||m===void 0){o.push(s);continue}if(m.kind==="boolean"){c[u]=!0;continue}let f=l[2];if(f===void 0&&O(e[a+1])&&(f=e[a+1],a+=1),f===void 0)throw new Error(`${s} requires a value`);if(m.type==="array"){let h=c[u]??[];h.push(m.coerce(f)),c[u]=h}else c[u]=m.coerce(f)}return{values:c,rest:o}}var S=class extends Error{token;known;constructor(n,t){super(`unknown command '${n}'; expected one of: ${t.join(", ")}`),this.name="UnknownCommandError",this.token=n,this.known=t}};function B(e,n){let[t,...r]=e;if(t!==void 0){for(let[c,o]of Object.entries(n.commands))if(t===c||(o.aliases??[]).includes(t))return{command:c,args:r};if(n.errorOnUnknownCommand&&!t.startsWith("-"))throw new S(t,Object.keys(n.commands))}let i=n.keepArgvOnDefault??!0;return{command:n.default,args:i?[...e]:r}}var z={comma:",",tab:" ",pipe:"|"},Ie=z.comma;var vn=Symbol("need line");var zn=Symbol("unset");var vt=new TextEncoder,Tt=new TextDecoder;var Ve={"store-uri":{kind:"value",coerce:e=>e},full:{kind:"boolean"},brief:{kind:"boolean"},terse:{kind:"boolean"},query:{kind:"value",coerce:e=>e}},He={json:{kind:"boolean"}},Ke={help:{kind:"boolean",aliases:["h"]}};function Q(e){let{command:n,args:t}=B(e,Ge);return n==="--version"?{kind:"version",json:W(t,He).values.json===!0}:Ze(e)?{kind:"help"}:{kind:"command"}}var Ge={commands:{"--version":{aliases:["-v"]},run:{}},default:"run",keepArgvOnDefault:!0};function Ze(e){return U(e,Ke).values.help===!0}var vr=Object.keys(Ve).map(e=>`--${e}`);function X(e){let n=e[0]==="--help"||e[0]==="-h"?void 0:e[0];return`${Je(n).join(`
13
13
  `)}
14
- `}function Je(e){switch(e){case"stats":return p("rsp stats [--since <days>d] [--full]",["Defaults: --since 30d, --full false","--since <days>d telemetry window, default 30d","--full include wider daily/top-command/failure lists, default false","--store-uri <uri> read a non-default store"],["rsp stats","rsp stats --since 7d --full"]);case"gains":return p("rsp gains [--since <days>d]",["--since <days>d gains window, default 28d","--store-uri <uri> read a non-default shared RedDB store"],["rsp gains","rsp gains --since 14d"]);case"show":return p("rsp show <handle>",["<handle> elision handle such as el:<id>","--store-uri <uri> read a non-default store"],["rsp show el:<id>","rsp show <handle>"]);case"git":return p("rsp git <status|log|diff|show|blame|branch|commit|push> [options]",["--brief compact output, default lossless","--terse aggressively summarize and mint recovery handles","--query <text> filter rendered rows","--full keep full supported wrapper detail"],["rsp git status --brief","rsp git log --terse","rsp git diff --query <path>"]);case"gh":return p("rsp gh <pr|issue|run> <list|view> [options] | api <REST-path> | <issues|prs|edit-labels|link-sub-issues> ...",["--brief compact output, default lossless","--terse aggressively summarize and mint recovery handles","--query <text> filter rendered rows","--full keep full supported wrapper detail","--json <fields> select fields for batched issues/prs","--repo <slug> owner/repo override for batched operations","api GET reads use the resident ETag/rate-aware client and emit canonical TOON"],["rsp gh issues 42 43 --json state,title,labels,body","rsp gh prs 12 13 --json state,mergeable,statusCheckRollup","rsp gh edit-labels --add ready-for-agent --remove blocked:crashed 42 43","rsp gh link-sub-issues 100 101 102","rsp gh api repos/owner/repo/actions/runs/123"]);case"vitest":return p("rsp vitest [run] [vitest-options]",["--brief compact output, default lossless","--terse summarize long failures and mint recovery handles","--query <text> filter failure rows"],["rsp vitest run","rsp vitest run --query <suite-or-test>"]);case"cargo":return p("rsp cargo test [cargo-test-options]",["--brief compact output, default lossless","--terse summarize long failures and mint recovery handles","--query <text> filter failure rows"],["rsp cargo test","rsp cargo test --query <test-name>"]);case"cat":return p("rsp cat [--head <n>|--tail <n>|--full] <file>",["--head <n> show first n lines, default slice 10","--tail <n> show last n lines, default slice 10","--full emit full text even when it is large","--brief/--terse reduce large text context"],["rsp cat <file>","rsp cat --head 20 <file>","rsp cat --tail 20 <file>"]);case"exec":return p('rsp exec -- "<command line>"',["--brief compact recognized stdout, default lossless","--terse summarize large stdout and mint recovery handles","--query <text> filter supported structured summaries"],['rsp exec -- "pnpm -C apps/rsp build"','rsp exec -- "git status --short"']);case"proxy":return p("rsp proxy -- <command line>",["--brief compact recognized stdout, default lossless","--terse summarize recognized large stdout"],["rsp proxy -- git status","rsp proxy -- pnpm test"]);case"wait":return["usage: rsp wait <subcommand> [options]","","Flags and defaults:"," --timeout <duration> default 30m for cmd, 45m for pr/run/job, 2h for release"," --reason <text> default empty"," --signal-pid <pid> optional completion signal target"," --signal <signal> default USR1"," --notify-cmd <cmd> optional completion command","","Examples:",' rsp wait pr 123 --reason "before merge"'," rsp wait run --branch feature/wait --latest"," rsp wait job 93919316178",' rsp wait release --tag "v2.*" --existing',' rsp wait cmd -- "pnpm -C apps/rsp build"'," rsp wait ls","","Exit codes: 0 = success verdict, 1 = failure verdict, 2 = timeout/indeterminate."];case"doctor":return p("rsp doctor [--since <days>d]",["--since <days>d recent degradation window, default 1d"],["rsp doctor","rsp doctor --since 7d"]);case"status":return p("rsp status",["No flags. Prints resident registry status as TOON."],["rsp status"]);case"sweep":return p("rsp sweep",["No flags. Removes stale resident registry entries, reclaims orphan state temps,","re-bounds the gh ETag cache, and prints TOON status."],["rsp sweep"]);case"setup":return p("rsp setup",["No flags. Provisions repo rsp configuration and store state."],["rsp setup"]);case"mcp":return p("rsp mcp",["No flags. Starts the rsp MCP server over stdio."],["rsp mcp"]);case"shell-init":return p("rsp shell-init <fish|bash|zsh>",["<fish|bash|zsh> target shell, no default"],["rsp shell-init bash","rsp shell-init fish"]);case"server":return p("rsp server [options]",["--socket <path> default resident socket","--pid-file <path> default resident pid file","--store-uri <uri> default repo store","--ttl-days <days> default from config","--ephemeral-ttl-hours <hours> default from config","--byte-budget <bytes> default from config","--idle-ms <ms> default from config"],["rsp server","rsp server --socket <path> --store-uri <uri>"]);case"warm-resident":return p("rsp warm-resident [options]",["--socket <path> default resident socket","--wake-lock <path> default resident wake lock","--store-uri <uri> default repo store","--idle-ms <ms> default from config"],["rsp warm-resident","rsp warm-resident --store-uri <uri>"]);case"gh-api-json":return p("rsp gh-api-json <path> [-f name=value ...]",["-f name=value string GitHub API field","-F name=value typed GitHub API field"],["rsp gh-api-json repos/{owner}/{repo}","rsp gh-api-json repos/{owner}/{repo}/pulls -f state=open"]);case"dashboard":return p("rsp dashboard",["No flags. The explicit spelling of the bare `rsp` invocation."],["rsp","rsp dashboard"]);case"hook":return p("rsp hook <claude-pre-exec|codex-pre-exec|claude-post-exec|codex-post-exec>",["Reads hook payload from stdin. Defaults come from the calling host."],["rsp hook codex-pre-exec","rsp hook claude-pre-exec"]);case void 0:return["usage: rsp <subcommand> [options]","","Bare invocation:"," rsp"," renders a live TOON dashboard with recovery handles, active waits, savings, and health.","","Subcommands:"," dashboard, stats, gains, show, git, gh, vitest, cargo, cat, exec, proxy, wait"," doctor, status, sweep, setup, mcp, shell-init, server, warm-resident, gh-api-json, hook","","Global flags:"," --store-uri <uri> default repo store"," --brief compact summaries"," --terse aggressive summaries with recovery handles"," --query <text> filter supported rendered output"," --help, -h scoped help"," --version, -v build version; add --json for structured build info","","Examples:"," rsp"," rsp stats --since 7d"," rsp git log --terse"," rsp show el:<id>"];default:return p(`rsp ${e} [options]`,["Unknown rsp subcommand. Use root help to list supported subcommands."],["rsp --help"])}}function p(e,n,t){return[`usage: ${e}`,"","Flags and defaults:",...n.map(r=>` ${r}`),"","Examples:",...t.map(r=>` ${r}`)]}function ee(e){let n=Q(e);if(n.kind==="version"){let t=F("rsp");return process.stdout.write(n.json?`${JSON.stringify(t)}
14
+ `}function Je(e){switch(e){case"stats":return p("rsp stats [--since <days>d] [--full]",["Defaults: --since 30d, --full false","--since <days>d telemetry window, default 30d","--full include wider daily/top-command/failure lists, default false","--store-uri <uri> read a non-default store"],["rsp stats","rsp stats --since 7d --full"]);case"gains":return p("rsp gains [--since <days>d]",["--since <days>d gains window, default 28d","--store-uri <uri> read a non-default shared RedDB store"],["rsp gains","rsp gains --since 14d"]);case"show":return p("rsp show <handle>",["<handle> elision handle such as el:<id>","--store-uri <uri> read a non-default store"],["rsp show el:<id>","rsp show <handle>"]);case"git":return p("rsp git <status|log|diff|show|blame|branch|commit|push> [options]",["--brief compact output, default lossless","--terse aggressively summarize and mint recovery handles","--query <text> filter rendered rows","--full keep full supported wrapper detail"],["rsp git status --brief","rsp git log --terse","rsp git diff --query <path>"]);case"gh":return p("rsp gh <pr|issue|run> <list|view> [options] | api <REST-path> | <issues|prs|edit-labels|link-sub-issues> ...",["--brief compact output, default lossless","--terse aggressively summarize and mint recovery handles","--query <text> filter rendered rows","--full keep full supported wrapper detail","--json <fields> select fields for batched issues/prs","--repo <slug> owner/repo override for batched operations","api GET reads use the resident ETag/rate-aware client and emit canonical TOON"],["rsp gh issues 42 43 --json state,title,labels,body","rsp gh prs 12 13 --json state,mergeable,statusCheckRollup","rsp gh edit-labels --add ready-for-agent --remove blocked:crashed 42 43","rsp gh link-sub-issues 100 101 102","rsp gh api repos/owner/repo/actions/runs/123"]);case"vitest":return p("rsp vitest [run] [vitest-options]",["--brief compact output, default lossless","--terse summarize long failures and mint recovery handles","--query <text> filter failure rows"],["rsp vitest run","rsp vitest run --query <suite-or-test>"]);case"cargo":return p("rsp cargo test [cargo-test-options]",["--brief compact output, default lossless","--terse summarize long failures and mint recovery handles","--query <text> filter failure rows"],["rsp cargo test","rsp cargo test --query <test-name>"]);case"cat":return p("rsp cat [--head <n>|--tail <n>|--full] <file>",["--head <n> show first n lines, default slice 10","--tail <n> show last n lines, default slice 10","--full emit full text even when it is large","--brief/--terse reduce large text context"],["rsp cat <file>","rsp cat --head 20 <file>","rsp cat --tail 20 <file>"]);case"exec":return p('rsp exec -- "<command line>"',["--brief compact recognized stdout, default lossless","--terse summarize large stdout and mint recovery handles","--query <text> filter supported structured summaries"],['rsp exec -- "pnpm -C apps/rsp build"','rsp exec -- "git status --short"']);case"proxy":return p("rsp proxy -- <command line>",["--brief compact recognized stdout, default lossless","--terse summarize recognized large stdout"],["rsp proxy -- git status","rsp proxy -- pnpm test"]);case"wait":return["usage: rsp wait <subcommand> [options]","","Flags and defaults:"," --timeout <duration> default 30m for cmd, 45m for pr/run/job, 2h for release"," --reason <text> default empty"," --signal-pid <pid> optional completion signal target"," --signal <signal> default USR1"," --notify-cmd <cmd> optional completion command","","Examples:",' rsp wait pr 123 --reason "before merge"'," rsp wait run --branch feature/wait --latest"," rsp wait job 93919316178",' rsp wait release --tag "v2.*" --existing',' rsp wait cmd -- "pnpm -C apps/rsp build"'," rsp wait ls","","Exit codes: 0 = success verdict, 1 = failure verdict, 2 = timeout/indeterminate."];case"doctor":return p("rsp doctor [--since <days>d]",["--since <days>d recent degradation window, default 1d"],["rsp doctor","rsp doctor --since 7d"]);case"status":return p("rsp status",["No flags. Prints resident registry status as TOON."],["rsp status"]);case"sweep":return p("rsp sweep",["No flags. Removes stale resident registry entries, reclaims orphan state temps,","re-bounds the gh ETag cache, and prints TOON status."],["rsp sweep"]);case"setup":return p("rsp setup",["No flags. Provisions repo rsp configuration and store state."],["rsp setup"]);case"mcp":return p("rsp mcp",["No flags. Starts the rsp MCP server over stdio."],["rsp mcp"]);case"shell-init":return p("rsp shell-init <fish|bash|zsh>",["<fish|bash|zsh> target shell, no default"],["rsp shell-init bash","rsp shell-init fish"]);case"server":return p("rsp server [options]",["--socket <path> default resident socket","--pid-file <path> default resident pid file","--store-uri <uri> default repo store","--ttl-days <days> default from config","--ephemeral-ttl-hours <hours> default from config","--byte-budget <bytes> default from config","--idle-ms <ms> default from config"],["rsp server","rsp server --socket <path> --store-uri <uri>"]);case"warm-resident":return p("rsp warm-resident [options]",["--socket <path> default resident socket","--wake-lock <path> default resident wake lock","--store-uri <uri> default repo store","--idle-ms <ms> default from config"],["rsp warm-resident","rsp warm-resident --store-uri <uri>"]);case"gh-api-json":return p("rsp gh-api-json <path> [-f name=value ...]",["-f name=value string GitHub API field","-F name=value typed GitHub API field"],["rsp gh-api-json repos/{owner}/{repo}","rsp gh-api-json repos/{owner}/{repo}/pulls -f state=open"]);case"dashboard":return p("rsp dashboard",["No flags. The explicit spelling of the bare `rsp` invocation."],["rsp","rsp dashboard"]);case"hook":return p("rsp hook <claude-pre-exec|codex-pre-exec|claude-post-exec|codex-post-exec>",["Reads hook payload from stdin. Defaults come from the calling host."],["rsp hook codex-pre-exec","rsp hook claude-pre-exec"]);case void 0:return["usage: rsp <subcommand> [options]","","Bare invocation:"," rsp"," renders a live TOON dashboard with recovery handles, active waits, savings, and health.","","Subcommands:"," dashboard, stats, gains, show, git, gh, vitest, cargo, cat, exec, proxy, wait"," doctor, status, sweep, setup, mcp, shell-init, server, warm-resident, gh-api-json, hook","","Global flags:"," --store-uri <uri> default repo store"," --brief compact summaries"," --terse aggressive summaries with recovery handles"," --full suppress automatic reduction"," --query <text> filter supported rendered output"," --help, -h scoped help"," --version, -v build version; add --json for structured build info","","Examples:"," rsp"," rsp stats --since 7d"," rsp git log --terse"," rsp --full -- <command> <args...>"," rsp show el:<id>"];default:return p(`rsp ${e} [options]`,["Unknown rsp subcommand. Use root help to list supported subcommands."],["rsp --help"])}}function p(e,n,t){return[`usage: ${e}`,"","Flags and defaults:",...n.map(r=>` ${r}`),"","Examples:",...t.map(r=>` ${r}`)]}function ee(e){let n=Q(e);if(n.kind==="version"){let t=F("rsp");return process.stdout.write(n.json?`${JSON.stringify(t)}
15
15
  `:`${N(t)}
16
- `),0}return n.kind==="help"?(process.stdout.write(X(e)),0):null}async function j(){return await import(Ye(import.meta.url))}function Ye(e){let n=new URL(e),t=/\/rsp-([^/]+)\.bundle\.min\.mjs$/.exec(n.pathname);return n.pathname=t?n.pathname.replace(/\/rsp-[^/]+\.bundle\.min\.mjs$/,`/rsp-core-${t[1]}.bundle.min.mjs`):n.pathname.replace(/\/rsp\.bundle\.min\.mjs$/,"/rsp-core.bundle.min.mjs"),n.href}async function Qe(e){let n=ee(e);if(n!==null)return n;let t=I(e);return t?await L(t,async r=>(await j()).renderStructuredBoundary(r)):await(await j()).main([...e])}Qe(process.argv.slice(2)).then(e=>{process.exitCode=e},async e=>{let n=(await j()).renderCliFailure(e);process.stdout.write(n.output),process.exitCode=n.status});export{Ye as resolveCoreAsset};
16
+ `),0}return n.kind==="help"?(process.stdout.write(X(e)),0):null}async function j(){return await import(Ye(import.meta.url))}function Ye(e){let n=new URL(e),t=/\/rsp-([^/]+)\.bundle\.min\.mjs$/.exec(n.pathname);return n.pathname=t?n.pathname.replace(/\/rsp-[^/]+\.bundle\.min\.mjs$/,`/rsp-core-${t[1]}.bundle.min.mjs`):n.pathname.replace(/\/rsp\.bundle\.min\.mjs$/,"/rsp-core.bundle.min.mjs"),n.href}async function Qe(e){let n=ee(e);if(n!==null)return n;let t=R(e);if(t){let r=t.kind==="shell"?t.commandLine:t.argv.join(" ");return await I(t,async i=>(await j()).renderAutomaticCommandOutput(i,r,t.level))}return await(await j()).main([...e])}Qe(process.argv.slice(2)).then(e=>{process.exitCode=e},async e=>{let n=(await j()).renderCliFailure(e);process.stdout.write(n.output),process.exitCode=n.status});export{Ye as resolveCoreAsset};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reddb-io/red-skills",
3
- "version": "3.17.2",
3
+ "version": "3.17.5",
4
4
  "description": "RedSkills plugin runtime bundles (dev, code-nav, memory, brain) distributed over npm — the v2 client transport (ADR 0091). Carries the platform-independent JS bundles inside the tarball plus thin bin shims; no postinstall download.",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",