{$i18n.t('Functions')} | {$WEBUI_NAME}
{$i18n.t('Functions')}

{#each $functions.filter((f) => query === '' || f.name .toLowerCase() .includes(query.toLowerCase()) || f.id.toLowerCase().includes(query.toLowerCase())) as func}
{func.type}
{func.name}
{func.id}
{func.meta.description}
{#if func?.meta?.manifest?.funding_url ?? false} {/if} { goto(`/workspace/functions/edit?id=${encodeURIComponent(func.id)}`); }} shareHandler={() => { shareHandler(func); }} cloneHandler={() => { cloneHandler(func); }} exportHandler={() => { exportHandler(func); }} deleteHandler={async () => { deleteHandler(func); }} onClose={() => {}} >
{ toggleFunctionById(localStorage.token, func.id); models.set(await getModels(localStorage.token)); }} />
{/each}
{ console.log(importFiles); showConfirm = true; }} />
{$i18n.t('Made by OpenWebUI Community')}
{$i18n.t('Discover a function')}
{$i18n.t('Discover, download, and explore custom functions')}
{ const reader = new FileReader(); reader.onload = async (event) => { const _functions = JSON.parse(event.target.result); console.log(_functions); for (const func of _functions) { const res = await createNewFunction(localStorage.token, func).catch((error) => { toast.error(error); return null; }); } toast.success('Functions imported successfully'); functions.set(await getFunctions(localStorage.token)); models.set(await getModels(localStorage.token)); }; reader.readAsText(importFiles[0]); }} >
Please carefully review the following warnings:
  • Functions allow arbitrary code execution.
  • Do not install functions from sources you do not fully trust.
I acknowledge that I have read and I understand the implications of my action. I am aware of the risks associated with executing arbitrary code and I have verified the trustworthiness of the source.