@ycodium-ai/plugin-redteam-model 0.2.3180 → 0.2.3202
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/assets/ui.js +2 -2
- package/dist/index.js +1 -1
- package/locales/en.json +4 -0
- package/locales/zh-CN.json +4 -0
- package/package.json +3 -3
package/assets/ui.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var Z=window.__ycodiumPluginHost.react;var{Activity:be,Children:ve,Component:xe,Fragment:Se,Profiler:Ne,PureComponent:we,StrictMode:Pe,Suspense:ke,__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE:Me,__COMPILER_RUNTIME:Re,act:Ie,cache:Ce,cacheSignal:De,captureOwnerStack:Ee,cloneElement:Oe,createContext:O,createElement:P,createRef:ze,forwardRef:Be,isValidElement:Ae,lazy:_e,memo:Te,startTransition:He,unstable_useCacheRefresh:Ue,use:z,useActionState:$e,useCallback:k,useContext:Le,useDebugValue:Ve,useDeferredValue:Fe,useEffect:M,useEffectEvent:Ge,useId:qe,useImperativeHandle:je,useInsertionEffect:Xe,useLayoutEffect:Ye,useMemo:Je,useOptimistic:Ke,useReducer:We,useRef:B,useState:y,useSyncExternalStore:Qe,useTransition:Ze,version:en}=Z;var{jsx:t,jsxs:i,Fragment:tn}=window.__ycodiumPluginHost.jsxRuntime;var A=O(null);function S(e){return t(A,{value:e.bridge,children:e.children})}var ee=new Set(["Collapsible","CollapsiblePanel","CollapsibleTrigger"]);function f(e){let n=o=>{let r=z(A)?.ui?.[e];return r===void 0?ee.has(e)?P("div",{className:o.className},o.children):null:P(r,o)};return n.displayName=e,n}var d=f("Button"),_=f("Collapsible"),T=f("CollapsibleTrigger"),H=f("CollapsiblePanel"),b=f("EmptyInline"),U=f("ChevronDown");var h="redteam-model",p=["authorization","scope","evidence","report"],$=[{id:"redteam",group:"general"},{id:"pentest",group:"professional"},{id:"code-audit",group:"professional"},{id:"binary-analysis",group:"professional"},{id:"attack-defense",group:"professional"},{id:"av-evasion",group:"professional"},{id:"incident-response",group:"professional"},{id:"cloud-security",group:"professional"},{id:"ctf-solver",group:"professional"},{id:"asset-mapping",group:"professional"}],ne={redteam:{displayName:"Researcher",detail:"General session. Gates are optional."},pentest:{displayName:"Assessment",detail:"Authorized review with the four gates required."},"code-audit":{displayName:"Code review",detail:"Source review with the four gates required."},"binary-analysis":{displayName:"Binary review",detail:"Binary review with the four gates required."},"attack-defense":{displayName:"Exercise",detail:"Authorized exercise with the four gates required."},"av-evasion":{displayName:"Detection review",detail:"Detection review. No evasion steps, payloads, or refusal bypass."},"incident-response":{displayName:"Incident review",detail:"Incident review with the four gates required."},"cloud-security":{displayName:"Cloud review",detail:"Cloud review with the four gates required."},"ctf-solver":{displayName:"Puzzle workspace",detail:"Puzzle workspace with the four gates required."},"asset-mapping":{displayName:"Asset inventory",detail:"Inventory workflow with the four gates required."}};function te(e){let n=$.find(s=>s.id===e);if(n===void 0)return null;let o=ne[n.id];return{id:n.id,group:n.group,...o}}function R(){return $.map(e=>te(e.id)).filter(e=>e!==null)}var L="board",ln={gates:`${h}_gates_list`,goal:`${h}_operation_goal`,progress:`${h}_operation_progress`,publish:`${h}_publish`,probe:`${h}_probe`,note:`${h}_ledger_note`};function V(e){let{t:n}=e,[o,s]=y(e.initialProfessionalOpen===!0),[a,r]=y(e.presetId??null),[u,c]=y(!1),m=R(),N=m.filter(l=>l.group==="general"),g=m.filter(l=>l.group==="professional");M(()=>{r(e.presetId??null)},[e.presetId]),M(()=>{let l=x=>{let E=x.detail;r(typeof E?.presetId=="string"?E.presetId:null)};return window.addEventListener("ycodium-draft-preset",l),()=>window.removeEventListener("ycodium-draft-preset",l)},[]);let w=l=>{if(r(l),!e.deployed)return;if(typeof e.onSelectPreset=="function"){e.onSelectPreset(l),c(!1);return}let x=e.bridge.agentPreset?.select;if(x!==void 0){x(l),c(!1);return}c(!0)};return i("section",{className:"rm-hero",children:[t("p",{className:"rm-kicker",children:n("hero.title")}),t("p",{className:"rm-lead",children:n("hero.lead")}),e.deployed?null:t("p",{className:"rm-banner",children:n("hero.deployFirst")}),e.selectable===!1?t("p",{className:"rm-muted",children:n("hero.readOnly")}):null,u?t("p",{className:"rm-muted",children:n("hero.unwired")}):null,i("div",{className:"rm-modes",children:[N.map(l=>t(d,{size:"xs",type:"button",variant:a===l.id?"default":"outline",disabled:!e.deployed,"aria-pressed":a===l.id,onClick:()=>w(l.id),children:n(`mode.${l.id}.name`)},l.id)),t(d,{size:"xs",variant:"outline",type:"button","aria-expanded":o,onClick:()=>s(l=>!l),children:n(o?"hero.hideProfessional":"hero.professional")}),a===null?null:t(d,{size:"xs",variant:"outline",type:"button",disabled:!e.deployed,onClick:()=>w(null),children:n("hero.clear")})]}),o?t("div",{className:"rm-modes",children:g.map(l=>t(d,{size:"xs",type:"button",variant:a===l.id?"default":"outline",disabled:!e.deployed,"aria-pressed":a===l.id,onClick:()=>w(l.id),children:t("span",{children:n(`mode.${l.id}.name`)})},l.id))}):null,a===null?null:t("p",{className:"rm-muted",children:n("hero.selected")})]})}var re=12,oe=20;function I(e=null){return{modeId:e,phase:"authorization",goal:"",done:0,total:p.length,reportOpen:!1,authorizationRecorded:!1,denials:[],notes:[]}}function F(e){if(typeof e!="object"||e===null)return null;let n=e;return typeof n.deployed!="boolean"||!Array.isArray(n.modules)||!Array.isArray(n.modes)?null:n}function ie(e){return p.includes(e)}function G(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function ae(e){return!G(e)||typeof e.tool!="string"||typeof e.reason!="string"?null:{tool:e.tool,code:typeof e.code=="string"?e.code:"denied",reason:e.reason,at:typeof e.at=="string"?e.at:""}}function q(e){if(!G(e))return I();let n=typeof e.phase=="string"&&ie(e.phase)?e.phase:"authorization",o=Array.isArray(e.denials)?e.denials.flatMap(a=>{let r=ae(a);return r===null?[]:[r]}):[],s=Array.isArray(e.notes)?e.notes.filter(a=>typeof a=="string").slice(0,oe):[];return{modeId:typeof e.modeId=="string"?e.modeId:null,phase:n,goal:typeof e.goal=="string"?e.goal:"",done:typeof e.done=="number"?e.done:0,total:typeof e.total=="number"?e.total:p.length,reportOpen:e.reportOpen===!0,authorizationRecorded:e.authorizationRecorded===!0,denials:o.slice(0,re),notes:s}}var se={},le="ycodium.sessionProjection";function de(e){if(typeof e!="object"||e===null)return{present:!1,value:null};let n=e;return{present:n.present===!0,value:n.value??null}}function v(e){return e.i18n.usePluginTranslation()}function ue(e,n){return e!==null?{next:e,claimed:!1}:{next:n,claimed:!0}}function j(e){return{disabled:e!==null,labelKey:e==="deploy"?"settings.deploying":"settings.deploy"}}function C(e){let n=e.commands.useSubscription("live",se),o=n.data,s=o?.board===void 0?null:F(o.board),a=B(null),[r,u]=y(null),c=k(async(m,N={})=>{let g=ue(a.current,m);if(!(!g.claimed||g.next===null)){a.current=g.next,u(g.next);try{await e.commands.invoke(m,N)}finally{a.current=null,u(null)}}},[e]);return{board:s,pending:n.isPending,error:n.error,runningCommand:r,run:c}}function D(e,n){let o=n!==null&&n.length>0?n:"_",s=e.commands.useSubscription(le,{name:L,threadId:o}),a=de(s.data),r=n===null||n.length===0?null:a.present?q(a.value):I(),u=k(async(c,m={})=>{await e.commands.invoke(c,{threadId:n??"",...m})},[e,n]);return{session:r,pending:s.isPending,run:u}}var pe=["settings.limitBundle","settings.limitIsolate","settings.limitSection","settings.limitList","settings.limitEvents","settings.limitFollowup","settings.limitSubagent","settings.limitScanner","settings.limitPicker","settings.limitTurn","settings.limitRefresh"];function X(e){let{t:n,board:o}=e,s=e.runningCommand!==null,a=j(e.runningCommand);return o===null?t("section",{className:"rm-root",children:t(b,{title:e.pending?n("common.loading"):n("common.empty")})}):i("section",{className:"rm-root",children:[i("header",{className:"rm-head",children:[i("div",{children:[t("p",{className:"rm-kicker",children:n("common.source")}),t("h2",{className:"rm-title",children:n("settings.title")}),t("p",{className:"rm-lead",children:n("settings.lead")})]}),t("span",{className:o.deployed?"rm-pill rm-pill-ok":"rm-pill",children:o.deployed?n("settings.deployed"):n("settings.notDeployed")})]}),i("div",{className:"rm-card",children:[i("div",{className:"rm-actions",children:[t(d,{size:"xs",variant:"default",type:"button",onClick:e.onDeploy,disabled:a.disabled,children:n(a.labelKey)}),t(d,{size:"xs",variant:"outline",type:"button",onClick:e.onRemove,disabled:!o.deployed||s,children:n("settings.remove")}),t(d,{size:"xs",variant:"outline",type:"button",onClick:e.onRepair,disabled:s,children:n("settings.repair")}),t(d,{size:"xs",variant:"outline",type:"button",onClick:()=>e.onProbe(!o.probeDenial),disabled:s,children:o.probeDenial?n("settings.probeHold"):n("settings.probeAllow")})]}),t("p",{className:"rm-lead",children:n("settings.routing")}),o.lastDenial===null?t("p",{className:"rm-muted",children:n("settings.noDenial")}):i("p",{className:"rm-banner",role:"status",children:[n("settings.denial")," ",o.lastDenial.tool,": ",o.lastDenial.reason]})]}),i("div",{className:"rm-card",children:[t("h3",{className:"rm-title",children:n("settings.modes")}),t("div",{className:"rm-modes",children:o.modes.map(r=>i("article",{className:"rm-card",children:[t("p",{className:"rm-kicker",children:n(`group.${r.group}`)}),t("strong",{children:n(`mode.${r.id}.name`)}),t("p",{className:"rm-muted",children:n(`mode.${r.id}.detail`)})]},r.id))})]}),i("div",{className:"rm-card",children:[t("h3",{className:"rm-title",children:n("settings.modules")}),t("p",{className:"rm-lead",children:n("settings.withheldNote")}),o.modules.map(r=>i("div",{className:"rm-module",children:[i("div",{children:[t("strong",{children:n(`module.${r.id}`)}),i("p",{className:"rm-muted",children:[n(`plane.${r.plane}`)," \xB7 ",n(`availability.${r.availability}`)," \xB7"," ",r.installed?n("common.installed"):n("common.absent")]})]}),i("div",{className:"rm-actions",children:[t(d,{size:"xs",variant:"outline",type:"button",disabled:s,onClick:()=>e.onInstall(r.id),children:n("settings.install")}),t(d,{size:"xs",variant:"outline",type:"button",disabled:!r.installed||s,onClick:()=>e.onUpdate(r.id),children:n("settings.update")}),t(d,{size:"xs",variant:"outline",type:"button",disabled:!r.installed||s,onClick:()=>e.onUninstall(r.id),children:n("settings.uninstall")})]})]},r.id)),t("p",{className:"rm-muted",children:n("settings.mcpNote")})]}),i("div",{className:"rm-card",children:[t("h3",{className:"rm-title",children:n("settings.hostPluginsTitle")}),t("p",{className:"rm-lead",children:n("settings.hostPluginsLead")}),t(d,{size:"xs",variant:"outline",type:"button",onClick:e.onOpenHostPlugins,children:n("settings.hostPluginsAction")})]}),i("div",{className:"rm-card",children:[t("h3",{className:"rm-title",children:n("settings.operations")}),o.operations.length===0?t("p",{className:"rm-muted",children:n("settings.noOperations")}):t("ul",{className:"rm-log",children:o.operations.map(r=>i("li",{children:[i("span",{children:[r.kind," \xB7 ",n(`op.${r.status}`)]}),t("span",{className:"rm-muted",children:r.detail})]},r.id))})]}),i("div",{className:"rm-card",children:[t("h3",{className:"rm-title",children:n("settings.limitsTitle")}),t("ul",{className:"rm-note",children:pe.map(r=>t("li",{children:n(r)},r))})]})]})}function Y(e){return{authorization:e.authorizationRecorded?"secondary":"primary",report:e.authorizationRecorded&&!e.reportOpen?"primary":"secondary"}}function J(e){let{t:n,session:o}=e;if(e.threadId===null||e.threadId.length===0||o===null||o.modeId===null)return null;let s=Math.min(o.done,p.length),a=Y(o);return i(_,{className:"rm-seat",defaultOpen:!0,children:[i(T,{className:"rm-seat-trigger",children:[t(U,{className:"rm-seat-chevron"}),n("session.title")]}),t(H,{children:t("div",{className:"rm-seat-body",children:i("section",{className:"rm-session",children:[i("header",{className:"rm-head",children:[t("div",{children:t("p",{className:"rm-muted",children:n(`mode.${o.modeId}.name`)})}),i("span",{className:"rm-pill",children:[n("session.progress")," ",o.done,"/",o.total]})]}),t("div",{className:"rm-rail","aria-label":n("session.phase"),children:p.map(r=>t(d,{size:"xs",type:"button",variant:o.phase===r?"default":"outline","aria-pressed":o.phase===r,onClick:()=>e.onPhase(r),children:n(`phase.${r}`)},r))}),t("div",{className:"rm-dots","aria-label":n("session.coverage"),children:p.map((r,u)=>t("span",{className:"rm-dot","data-on":u<s?"true":"false"},r))}),t("p",{className:"rm-lead",children:o.goal.length===0?n("session.noGoal"):o.goal}),t("p",{className:"rm-muted",children:n("session.actionsLead")}),i("div",{className:"rm-actions",children:[i("div",{className:"rm-action",children:[t(d,{size:"xs",type:"button",variant:a.authorization==="primary"?"default":"outline","data-tone":a.authorization,onClick:e.onAuthorize,disabled:o.authorizationRecorded,children:o.authorizationRecorded?n("session.authorizationDone"):n("session.authorization")}),t("p",{className:"rm-hint",children:n("session.authorizationHint")})]}),i("div",{className:"rm-action",children:[t(d,{size:"xs",type:"button",variant:a.report==="primary"?"default":"outline","data-tone":a.report,onClick:e.onReport,disabled:o.reportOpen,children:o.reportOpen?n("session.reportOpen"):n("session.report")}),t("p",{className:"rm-hint",children:n("session.reportHint")})]}),i("div",{className:"rm-action",children:[t(d,{size:"xs",type:"button",variant:"outline","data-tone":"secondary",onClick:e.onRemind,children:n("session.reminder")}),t("p",{className:"rm-hint",children:n("session.reminderHint")})]})]}),i("div",{className:"rm-card",children:[t("h3",{className:"rm-title",children:n("session.denials")}),o.denials.length===0?t(b,{title:n("session.noDenials")}):o.denials.map(r=>i("p",{className:"rm-banner",role:"status",children:[r.tool,": ",r.reason]},`${r.at}-${r.tool}`))]}),i("div",{className:"rm-card",children:[t("h3",{className:"rm-title",children:n("session.notes")}),o.notes.length===0?t(b,{title:n("session.noNotes")}):t("ul",{className:"rm-note",children:o.notes.map(r=>t("li",{children:r},r))})]})]})})})]})}function K(e){if(e.threadId===null||e.threadId.length===0||e.session===null||e.session.modeId===null)return null;let n=e.session.total>0&&e.session.done>=e.session.total;return i("span",{className:"rm-chip","data-done":n?"true":"false",children:[i("span",{children:[e.t("header.progress")," ",e.session.done,"/",e.session.total]}),i("span",{children:[e.t("header.denials")," ",e.session.denials.length]})]})}var ce=`
|
|
1
|
+
var Z=window.__ycodiumPluginHost.react;var{Activity:fe,Children:he,Component:be,Fragment:ve,Profiler:xe,PureComponent:Se,StrictMode:Ne,Suspense:we,__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE:Pe,__COMPILER_RUNTIME:ke,act:Me,cache:Re,cacheSignal:Ie,captureOwnerStack:Ce,cloneElement:De,createContext:z,createElement:P,createRef:Ee,forwardRef:ze,isValidElement:Oe,lazy:Be,memo:Ae,startTransition:_e,unstable_useCacheRefresh:Te,use:O,useActionState:Ue,useCallback:k,useContext:He,useDebugValue:$e,useDeferredValue:Le,useEffect:M,useEffectEvent:Ve,useId:Fe,useImperativeHandle:Ge,useInsertionEffect:qe,useLayoutEffect:je,useMemo:Xe,useOptimistic:Ye,useReducer:Ke,useRef:B,useState:y,useSyncExternalStore:Je,useTransition:We,version:Qe}=Z;var{jsx:t,jsxs:i,Fragment:en}=window.__ycodiumPluginHost.jsxRuntime;var A=z(null);function S(e){return t(A,{value:e.bridge,children:e.children})}var ee=new Set(["Collapsible","CollapsiblePanel","CollapsibleTrigger"]);function f(e){let n=r=>{let o=O(A)?.ui?.[e];return o===void 0?ee.has(e)?P("div",{className:r.className},r.children):null:P(o,r)};return n.displayName=e,n}var d=f("Button"),_=f("Collapsible"),T=f("CollapsibleTrigger"),U=f("CollapsiblePanel"),c=f("EmptyInline"),H=f("ChevronDown");var h="redteam-model",m=["authorization","scope","evidence","report"],$=[{id:"redteam",group:"general"},{id:"pentest",group:"professional"},{id:"code-audit",group:"professional"},{id:"binary-analysis",group:"professional"},{id:"attack-defense",group:"professional"},{id:"av-evasion",group:"professional"},{id:"incident-response",group:"professional"},{id:"cloud-security",group:"professional"},{id:"ctf-solver",group:"professional"},{id:"asset-mapping",group:"professional"}],ne={redteam:{displayName:"Researcher",detail:"General session. Gates are optional."},pentest:{displayName:"Assessment",detail:"Authorized review with the four gates required."},"code-audit":{displayName:"Code review",detail:"Source review with the four gates required."},"binary-analysis":{displayName:"Binary review",detail:"Binary review with the four gates required."},"attack-defense":{displayName:"Exercise",detail:"Authorized exercise with the four gates required."},"av-evasion":{displayName:"Detection review",detail:"Detection review. No evasion steps, payloads, or refusal bypass."},"incident-response":{displayName:"Incident review",detail:"Incident review with the four gates required."},"cloud-security":{displayName:"Cloud review",detail:"Cloud review with the four gates required."},"ctf-solver":{displayName:"Puzzle workspace",detail:"Puzzle workspace with the four gates required."},"asset-mapping":{displayName:"Asset inventory",detail:"Inventory workflow with the four gates required."}};function te(e){let n=$.find(s=>s.id===e);if(n===void 0)return null;let r=ne[n.id];return{id:n.id,group:n.group,...r}}function R(){return $.map(e=>te(e.id)).filter(e=>e!==null)}var L="board",an={gates:`${h}_gates_list`,goal:`${h}_operation_goal`,progress:`${h}_operation_progress`,publish:`${h}_publish`,probe:`${h}_probe`,note:`${h}_ledger_note`};function V(e){let{t:n}=e,[r,s]=y(e.initialProfessionalOpen===!0),[a,o]=y(e.presetId??null),[u,p]=y(!1),b=R(),N=b.filter(l=>l.group==="general"),g=b.filter(l=>l.group==="professional");M(()=>{o(e.presetId??null)},[e.presetId]),M(()=>{let l=x=>{let E=x.detail;o(typeof E?.presetId=="string"?E.presetId:null)};return window.addEventListener("ycodium-draft-preset",l),()=>window.removeEventListener("ycodium-draft-preset",l)},[]);let w=l=>{if(o(l),!e.deployed)return;if(typeof e.onSelectPreset=="function"){e.onSelectPreset(l),p(!1);return}let x=e.bridge.agentPreset?.select;if(x!==void 0){x(l),p(!1);return}p(!0)};return i("section",{className:"rm-hero",children:[t("p",{className:"rm-kicker",children:n("hero.title")}),t("p",{className:"rm-lead",children:n("hero.lead")}),e.deployed?null:t("p",{className:"rm-banner",children:n("hero.deployFirst")}),e.selectable===!1?t("p",{className:"rm-muted",children:n("hero.readOnly")}):null,u?t("p",{className:"rm-muted",children:n("hero.unwired")}):null,i("div",{className:"rm-modes",children:[N.map(l=>t(d,{size:"xs",type:"button",variant:a===l.id?"default":"outline",disabled:!e.deployed,"aria-pressed":a===l.id,onClick:()=>w(l.id),children:n(`mode.${l.id}.name`)},l.id)),t(d,{size:"xs",variant:"outline",type:"button","aria-expanded":r,onClick:()=>s(l=>!l),children:n(r?"hero.hideProfessional":"hero.professional")}),a===null?null:t(d,{size:"xs",variant:"outline",type:"button",disabled:!e.deployed,onClick:()=>w(null),children:n("hero.clear")})]}),r?t("div",{className:"rm-modes",children:g.map(l=>t(d,{size:"xs",type:"button",variant:a===l.id?"default":"outline",disabled:!e.deployed,"aria-pressed":a===l.id,onClick:()=>w(l.id),children:t("span",{children:n(`mode.${l.id}.name`)})},l.id))}):null,a===null?null:t("p",{className:"rm-muted",children:n("hero.selected")})]})}var re=12,oe=20;function I(e=null){return{modeId:e,phase:"authorization",goal:"",done:0,total:m.length,reportOpen:!1,authorizationRecorded:!1,denials:[],notes:[]}}function F(e){if(typeof e!="object"||e===null)return null;let n=e;return typeof n.deployed!="boolean"||!Array.isArray(n.modules)||!Array.isArray(n.modes)?null:n}function ie(e){return m.includes(e)}function G(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function ae(e){return!G(e)||typeof e.tool!="string"||typeof e.reason!="string"?null:{tool:e.tool,code:typeof e.code=="string"?e.code:"denied",reason:e.reason,at:typeof e.at=="string"?e.at:""}}function q(e){if(!G(e))return I();let n=typeof e.phase=="string"&&ie(e.phase)?e.phase:"authorization",r=Array.isArray(e.denials)?e.denials.flatMap(a=>{let o=ae(a);return o===null?[]:[o]}):[],s=Array.isArray(e.notes)?e.notes.filter(a=>typeof a=="string").slice(0,oe):[];return{modeId:typeof e.modeId=="string"?e.modeId:null,phase:n,goal:typeof e.goal=="string"?e.goal:"",done:typeof e.done=="number"?e.done:0,total:typeof e.total=="number"?e.total:m.length,reportOpen:e.reportOpen===!0,authorizationRecorded:e.authorizationRecorded===!0,denials:r.slice(0,re),notes:s}}var se={};function v(e){return e.i18n.usePluginTranslation()}function le(e,n){return e!==null?{next:e,claimed:!1}:{next:n,claimed:!0}}function j(e){return{disabled:e!==null,labelKey:e==="deploy"?"settings.deploying":"settings.deploy"}}function C(e){let n=e.commands.useSubscription("live",se),r=n.data,s=r?.board===void 0?null:F(r.board),a=B(null),[o,u]=y(null),p=k(async(b,N={})=>{let g=le(a.current,b);if(!(!g.claimed||g.next===null)){a.current=g.next,u(g.next);try{await e.commands.invoke(b,N)}finally{a.current=null,u(null)}}},[e]);return{board:s,pending:n.isPending,error:n.error,runningCommand:o,run:p}}function D(e,n){let r=e.sessionProjections.useProjection(L,n||null),s=r,a=n===null||n.length===0?null:s.present?q(s.value):I(),o=k(async(u,p={})=>{await e.commands.invoke(u,{threadId:n??"",...p})},[e,n]);return{session:a,pending:r.isPending,isUnavailable:r.isUnavailable,error:r.error,run:o}}var de=["settings.limitBundle","settings.limitIsolate","settings.limitSection","settings.limitList","settings.limitEvents","settings.limitFollowup","settings.limitSubagent","settings.limitScanner","settings.limitPicker","settings.limitTurn","settings.limitRefresh"];function X(e){let{t:n,board:r}=e,s=e.runningCommand!==null,a=j(e.runningCommand);return r===null?t("section",{className:"rm-root",children:t(c,{title:e.pending?n("common.loading"):n("common.empty")})}):i("section",{className:"rm-root",children:[i("header",{className:"rm-head",children:[i("div",{children:[t("p",{className:"rm-kicker",children:n("common.source")}),t("h2",{className:"rm-title",children:n("settings.title")}),t("p",{className:"rm-lead",children:n("settings.lead")})]}),t("span",{className:r.deployed?"rm-pill rm-pill-ok":"rm-pill",children:r.deployed?n("settings.deployed"):n("settings.notDeployed")})]}),i("div",{className:"rm-card",children:[i("div",{className:"rm-actions",children:[t(d,{size:"xs",variant:"default",type:"button",onClick:e.onDeploy,disabled:a.disabled,children:n(a.labelKey)}),t(d,{size:"xs",variant:"outline",type:"button",onClick:e.onRemove,disabled:!r.deployed||s,children:n("settings.remove")}),t(d,{size:"xs",variant:"outline",type:"button",onClick:e.onRepair,disabled:s,children:n("settings.repair")}),t(d,{size:"xs",variant:"outline",type:"button",onClick:()=>e.onProbe(!r.probeDenial),disabled:s,children:r.probeDenial?n("settings.probeHold"):n("settings.probeAllow")})]}),t("p",{className:"rm-lead",children:n("settings.routing")}),r.lastDenial===null?t("p",{className:"rm-muted",children:n("settings.noDenial")}):i("p",{className:"rm-banner",role:"status",children:[n("settings.denial")," ",r.lastDenial.tool,": ",r.lastDenial.reason]})]}),i("div",{className:"rm-card",children:[t("h3",{className:"rm-title",children:n("settings.modes")}),t("div",{className:"rm-modes",children:r.modes.map(o=>i("article",{className:"rm-card",children:[t("p",{className:"rm-kicker",children:n(`group.${o.group}`)}),t("strong",{children:n(`mode.${o.id}.name`)}),t("p",{className:"rm-muted",children:n(`mode.${o.id}.detail`)})]},o.id))})]}),i("div",{className:"rm-card",children:[t("h3",{className:"rm-title",children:n("settings.modules")}),t("p",{className:"rm-lead",children:n("settings.withheldNote")}),r.modules.map(o=>i("div",{className:"rm-module",children:[i("div",{children:[t("strong",{children:n(`module.${o.id}`)}),i("p",{className:"rm-muted",children:[n(`plane.${o.plane}`)," \xB7 ",n(`availability.${o.availability}`)," \xB7"," ",o.installed?n("common.installed"):n("common.absent")]})]}),i("div",{className:"rm-actions",children:[t(d,{size:"xs",variant:"outline",type:"button",disabled:s,onClick:()=>e.onInstall(o.id),children:n("settings.install")}),t(d,{size:"xs",variant:"outline",type:"button",disabled:!o.installed||s,onClick:()=>e.onUpdate(o.id),children:n("settings.update")}),t(d,{size:"xs",variant:"outline",type:"button",disabled:!o.installed||s,onClick:()=>e.onUninstall(o.id),children:n("settings.uninstall")})]})]},o.id)),t("p",{className:"rm-muted",children:n("settings.mcpNote")})]}),i("div",{className:"rm-card",children:[t("h3",{className:"rm-title",children:n("settings.hostPluginsTitle")}),t("p",{className:"rm-lead",children:n("settings.hostPluginsLead")}),t(d,{size:"xs",variant:"outline",type:"button",onClick:e.onOpenHostPlugins,children:n("settings.hostPluginsAction")})]}),i("div",{className:"rm-card",children:[t("h3",{className:"rm-title",children:n("settings.operations")}),r.operations.length===0?t("p",{className:"rm-muted",children:n("settings.noOperations")}):t("ul",{className:"rm-log",children:r.operations.map(o=>i("li",{children:[i("span",{children:[o.kind," \xB7 ",n(`op.${o.status}`)]}),t("span",{className:"rm-muted",children:o.detail})]},o.id))})]}),i("div",{className:"rm-card",children:[t("h3",{className:"rm-title",children:n("settings.limitsTitle")}),t("ul",{className:"rm-note",children:de.map(o=>t("li",{children:n(o)},o))})]})]})}function Y(e){return{authorization:e.authorizationRecorded?"secondary":"primary",report:e.authorizationRecorded&&!e.reportOpen?"primary":"secondary"}}function K(e){let{t:n,session:r}=e;if(e.threadId===null||e.threadId.length===0||r===null||r.modeId===null)return null;let s=Math.min(r.done,m.length),a=Y(r);return i(_,{className:"rm-seat",defaultOpen:!0,children:[i(T,{className:"rm-seat-trigger",children:[t(H,{className:"rm-seat-chevron"}),n("session.title")]}),t(U,{children:t("div",{className:"rm-seat-body",children:i("section",{className:"rm-session",children:[i("header",{className:"rm-head",children:[t("div",{children:t("p",{className:"rm-muted",children:n(`mode.${r.modeId}.name`)})}),i("span",{className:"rm-pill",children:[n("session.progress")," ",r.done,"/",r.total]})]}),t("div",{className:"rm-rail","aria-label":n("session.phase"),children:m.map(o=>t(d,{size:"xs",type:"button",variant:r.phase===o?"default":"outline","aria-pressed":r.phase===o,onClick:()=>e.onPhase(o),children:n(`phase.${o}`)},o))}),t("div",{className:"rm-dots","aria-label":n("session.coverage"),children:m.map((o,u)=>t("span",{className:"rm-dot","data-on":u<s?"true":"false"},o))}),t("p",{className:"rm-lead",children:r.goal.length===0?n("session.noGoal"):r.goal}),t("p",{className:"rm-muted",children:n("session.actionsLead")}),i("div",{className:"rm-actions",children:[i("div",{className:"rm-action",children:[t(d,{size:"xs",type:"button",variant:a.authorization==="primary"?"default":"outline","data-tone":a.authorization,onClick:e.onAuthorize,disabled:r.authorizationRecorded,children:r.authorizationRecorded?n("session.authorizationDone"):n("session.authorization")}),t("p",{className:"rm-hint",children:n("session.authorizationHint")})]}),i("div",{className:"rm-action",children:[t(d,{size:"xs",type:"button",variant:a.report==="primary"?"default":"outline","data-tone":a.report,onClick:e.onReport,disabled:r.reportOpen,children:r.reportOpen?n("session.reportOpen"):n("session.report")}),t("p",{className:"rm-hint",children:n("session.reportHint")})]}),i("div",{className:"rm-action",children:[t(d,{size:"xs",type:"button",variant:"outline","data-tone":"secondary",onClick:e.onRemind,children:n("session.reminder")}),t("p",{className:"rm-hint",children:n("session.reminderHint")})]})]}),i("div",{className:"rm-card",children:[t("h3",{className:"rm-title",children:n("session.denials")}),r.denials.length===0?t(c,{title:n("session.noDenials")}):r.denials.map(o=>i("p",{className:"rm-banner",role:"status",children:[o.tool,": ",o.reason]},`${o.at}-${o.tool}`))]}),i("div",{className:"rm-card",children:[t("h3",{className:"rm-title",children:n("session.notes")}),r.notes.length===0?t(c,{title:n("session.noNotes")}):t("ul",{className:"rm-note",children:r.notes.map(o=>t("li",{children:o},o))})]})]})})})]})}function J(e){if(e.threadId===null||e.threadId.length===0||e.session===null||e.session.modeId===null)return null;let n=e.session.total>0&&e.session.done>=e.session.total;return i("span",{className:"rm-chip","data-done":n?"true":"false",children:[i("span",{children:[e.t("header.progress")," ",e.session.done,"/",e.session.total]}),i("span",{children:[e.t("header.denials")," ",e.session.denials.length]})]})}var ue=`
|
|
2
2
|
.rm-root, .rm-hero, .rm-session, .rm-chip {
|
|
3
3
|
color: var(--foreground);
|
|
4
4
|
font: inherit;
|
|
@@ -105,4 +105,4 @@ html[data-fit-content] .rm-seat-body { max-height: 240px; }
|
|
|
105
105
|
.rm-rail { grid-template-columns: 1fr 1fr; }
|
|
106
106
|
.rm-root { padding: 12px; }
|
|
107
107
|
}
|
|
108
|
-
`,W=!1;function Q(){if(W||typeof document>"u")return;W=!0;let e=document.createElement("style");e.dataset.redteamModel="1",e.textContent=
|
|
108
|
+
`,W=!1;function Q(){if(W||typeof document>"u")return;W=!0;let e=document.createElement("style");e.dataset.redteamModel="1",e.textContent=ue,document.head.appendChild(e)}function pe(e){let n=v(e.bridge),{board:r,pending:s,runningCommand:a,run:o}=C(e.bridge);return t(S,{bridge:e.bridge,children:t(X,{t:n,board:r,pending:s,runningCommand:a,onDeploy:()=>{o("deploy")},onRemove:()=>{o("remove")},onRepair:()=>{o("repair")},onInstall:u=>{o("module.install",{id:u})},onUpdate:u=>{o("module.update",{id:u})},onUninstall:u=>{o("module.uninstall",{id:u})},onProbe:u=>{o("fields.set",{probeDenial:u})},onOpenHostPlugins:()=>e.bridge.navigate("/settings/plugins")})})}function ce(e){let n=v(e.bridge),{board:r}=C(e.bridge);return t(S,{bridge:e.bridge,children:t(V,{bridge:e.bridge,t:n,deployed:r?.deployed===!0,presetId:e.presetId,selectable:e.selectable,onSelectPreset:e.onSelectPreset})})}function me(e){let n=v(e.bridge),r=e.threadId??null,{session:s,run:a,isUnavailable:o,error:u}=D(e.bridge,r);return t(S,{bridge:e.bridge,children:o?t(c,{title:n("projection.unavailable")}):u!==null?t(c,{title:n("projection.readFailed")}):t(K,{t:n,session:s,threadId:r,onPhase:p=>{a("phase.set",{phase:p})},onAuthorize:()=>{a("authorization.record")},onReport:()=>{a("report.open")},onRemind:()=>{a("reminder")}})})}function ge(e){let n=v(e.bridge),r=e.threadId??null,{session:s}=D(e.bridge,r);return t(J,{t:n,session:s,threadId:r})}function ye(e){return Q(),{slots:[{name:"settings.section",order:40,component(){return t(pe,{bridge:e})}},{name:"conversation.hero.agentPreset",order:10,component(n){return t(ce,{bridge:e,...n})}},{name:"conversation.view",order:30,component(n){return t(me,{bridge:e,threadId:n.threadId})}},{name:"conversation.session.header.actions",order:30,component(n){return t(ge,{bridge:e,threadId:n.threadId})}}]}}export{ye as default};
|
package/dist/index.js
CHANGED
|
@@ -1018,7 +1018,7 @@ function createTools(host) {
|
|
|
1018
1018
|
// src/index.ts
|
|
1019
1019
|
var redteamModelPlugin = definePlugin({
|
|
1020
1020
|
id: "redteam-model",
|
|
1021
|
-
apiVersion:
|
|
1021
|
+
apiVersion: 18,
|
|
1022
1022
|
activate(ctx) {
|
|
1023
1023
|
const runtime = openRuntime(ctx);
|
|
1024
1024
|
ctx.sessionProjections.register({ name: PROJECTION_NAME });
|
package/locales/en.json
CHANGED
|
@@ -1,4 +1,8 @@
|
|
|
1
1
|
{
|
|
2
|
+
"projection": {
|
|
3
|
+
"unavailable": "Update this machine to the latest Ycodium to show this.",
|
|
4
|
+
"readFailed": "Couldn't read this from the machine. Try again later."
|
|
5
|
+
},
|
|
2
6
|
"common": {
|
|
3
7
|
"loading": "Loading the mode manager.",
|
|
4
8
|
"empty": "The mode manager is not available yet.",
|
package/locales/zh-CN.json
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ycodium-ai/plugin-redteam-model",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.3202",
|
|
4
4
|
"description": "Deploys ten session modes, a gate rail, and a tool guard. The executor keeps the model connection.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"redteam-model",
|
|
@@ -25,8 +25,8 @@
|
|
|
25
25
|
"react": "19.2.6",
|
|
26
26
|
"typescript": "~6.0.3",
|
|
27
27
|
"vite-plus": "0.2.2",
|
|
28
|
-
"@ycodium
|
|
29
|
-
"@ycodium/
|
|
28
|
+
"@ycodium/contracts": "0.0.33",
|
|
29
|
+
"@ycodium-ai/plugin-api": "0.2.3202"
|
|
30
30
|
},
|
|
31
31
|
"ycodium": {
|
|
32
32
|
"plugin": "./dist/index.js",
|