-
-
-
-
- {meta?.icon} {t('channel.configure', { name: meta?.name })}
-
-
{t(meta?.description || '')}
-
-
-
- {/* Instructions */}
-
-
-
{t('channel.howTo')}
- {meta?.docsUrl && (
-
- )}
-
-
- {meta?.instructions.map((inst, i) => (
- - {t(inst)}
- ))}
-
-
-
- {/* Config fields */}
- {meta?.configFields.map((field: ChannelConfigField) => {
- const isPassword = field.type === 'password';
- return (
-
-
-
- setConfigValues((prev) => ({ ...prev, [field.key]: e.target.value }))}
- autoComplete="off"
- className="font-mono text-sm bg-background border-input"
- />
- {isPassword && (
-
- )}
-
- {field.description && (
-
{t(field.description)}
- )}
-
- );
- })}
-
- {/* Validation error */}
- {validationError && (
-
-
- {validationError}
-
- )}
-
- {/* Save button */}
-
-
- );
-}
-
// NOTE: SkillsContent component removed - auto-install essential skills
// Installation status for each skill