mirror of https://github.com/openclaw/openclaw.git
852 lines
26 KiB
TypeScript
852 lines
26 KiB
TypeScript
import type { SecretTargetRegistryEntry } from "./target-registry-types.js";
|
|
|
|
const SECRET_INPUT_SHAPE = "secret_input"; // pragma: allowlist secret
|
|
const SIBLING_REF_SHAPE = "sibling_ref"; // pragma: allowlist secret
|
|
|
|
const SECRET_TARGET_REGISTRY: SecretTargetRegistryEntry[] = [
|
|
{
|
|
id: "auth-profiles.api_key.key",
|
|
targetType: "auth-profiles.api_key.key",
|
|
configFile: "auth-profiles.json",
|
|
pathPattern: "profiles.*.key",
|
|
refPathPattern: "profiles.*.keyRef",
|
|
secretShape: SIBLING_REF_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
authProfileType: "api_key",
|
|
},
|
|
{
|
|
id: "auth-profiles.token.token",
|
|
targetType: "auth-profiles.token.token",
|
|
configFile: "auth-profiles.json",
|
|
pathPattern: "profiles.*.token",
|
|
refPathPattern: "profiles.*.tokenRef",
|
|
secretShape: SIBLING_REF_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
authProfileType: "token",
|
|
},
|
|
{
|
|
id: "agents.defaults.memorySearch.remote.apiKey",
|
|
targetType: "agents.defaults.memorySearch.remote.apiKey",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "agents.defaults.memorySearch.remote.apiKey",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "agents.list[].memorySearch.remote.apiKey",
|
|
targetType: "agents.list[].memorySearch.remote.apiKey",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "agents.list[].memorySearch.remote.apiKey",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.bluebubbles.accounts.*.password",
|
|
targetType: "channels.bluebubbles.accounts.*.password",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.bluebubbles.accounts.*.password",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.bluebubbles.password",
|
|
targetType: "channels.bluebubbles.password",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.bluebubbles.password",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.discord.accounts.*.pluralkit.token",
|
|
targetType: "channels.discord.accounts.*.pluralkit.token",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.discord.accounts.*.pluralkit.token",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.discord.accounts.*.token",
|
|
targetType: "channels.discord.accounts.*.token",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.discord.accounts.*.token",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.discord.accounts.*.voice.tts.providers.*.apiKey",
|
|
targetType: "channels.discord.accounts.*.voice.tts.providers.*.apiKey",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.discord.accounts.*.voice.tts.providers.*.apiKey",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
providerIdPathSegmentIndex: 6,
|
|
},
|
|
{
|
|
id: "channels.discord.pluralkit.token",
|
|
targetType: "channels.discord.pluralkit.token",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.discord.pluralkit.token",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.discord.token",
|
|
targetType: "channels.discord.token",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.discord.token",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.discord.voice.tts.providers.*.apiKey",
|
|
targetType: "channels.discord.voice.tts.providers.*.apiKey",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.discord.voice.tts.providers.*.apiKey",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
providerIdPathSegmentIndex: 4,
|
|
},
|
|
{
|
|
id: "channels.feishu.accounts.*.appSecret",
|
|
targetType: "channels.feishu.accounts.*.appSecret",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.feishu.accounts.*.appSecret",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.feishu.accounts.*.encryptKey",
|
|
targetType: "channels.feishu.accounts.*.encryptKey",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.feishu.accounts.*.encryptKey",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.feishu.accounts.*.verificationToken",
|
|
targetType: "channels.feishu.accounts.*.verificationToken",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.feishu.accounts.*.verificationToken",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.feishu.appSecret",
|
|
targetType: "channels.feishu.appSecret",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.feishu.appSecret",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.feishu.encryptKey",
|
|
targetType: "channels.feishu.encryptKey",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.feishu.encryptKey",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.feishu.verificationToken",
|
|
targetType: "channels.feishu.verificationToken",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.feishu.verificationToken",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.googlechat.accounts.*.serviceAccount",
|
|
targetType: "channels.googlechat.serviceAccount",
|
|
targetTypeAliases: ["channels.googlechat.accounts.*.serviceAccount"],
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.googlechat.accounts.*.serviceAccount",
|
|
refPathPattern: "channels.googlechat.accounts.*.serviceAccountRef",
|
|
secretShape: SIBLING_REF_SHAPE,
|
|
expectedResolvedValue: "string-or-object",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
accountIdPathSegmentIndex: 3,
|
|
},
|
|
{
|
|
id: "channels.googlechat.serviceAccount",
|
|
targetType: "channels.googlechat.serviceAccount",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.googlechat.serviceAccount",
|
|
refPathPattern: "channels.googlechat.serviceAccountRef",
|
|
secretShape: SIBLING_REF_SHAPE,
|
|
expectedResolvedValue: "string-or-object",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.irc.accounts.*.nickserv.password",
|
|
targetType: "channels.irc.accounts.*.nickserv.password",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.irc.accounts.*.nickserv.password",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.irc.accounts.*.password",
|
|
targetType: "channels.irc.accounts.*.password",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.irc.accounts.*.password",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.irc.nickserv.password",
|
|
targetType: "channels.irc.nickserv.password",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.irc.nickserv.password",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.irc.password",
|
|
targetType: "channels.irc.password",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.irc.password",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.mattermost.accounts.*.botToken",
|
|
targetType: "channels.mattermost.accounts.*.botToken",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.mattermost.accounts.*.botToken",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.mattermost.botToken",
|
|
targetType: "channels.mattermost.botToken",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.mattermost.botToken",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.matrix.accounts.*.accessToken",
|
|
targetType: "channels.matrix.accounts.*.accessToken",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.matrix.accounts.*.accessToken",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.matrix.accounts.*.password",
|
|
targetType: "channels.matrix.accounts.*.password",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.matrix.accounts.*.password",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.matrix.accessToken",
|
|
targetType: "channels.matrix.accessToken",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.matrix.accessToken",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.matrix.password",
|
|
targetType: "channels.matrix.password",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.matrix.password",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.msteams.appPassword",
|
|
targetType: "channels.msteams.appPassword",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.msteams.appPassword",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.nextcloud-talk.accounts.*.apiPassword",
|
|
targetType: "channels.nextcloud-talk.accounts.*.apiPassword",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.nextcloud-talk.accounts.*.apiPassword",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.nextcloud-talk.accounts.*.botSecret",
|
|
targetType: "channels.nextcloud-talk.accounts.*.botSecret",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.nextcloud-talk.accounts.*.botSecret",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.nextcloud-talk.apiPassword",
|
|
targetType: "channels.nextcloud-talk.apiPassword",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.nextcloud-talk.apiPassword",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.nextcloud-talk.botSecret",
|
|
targetType: "channels.nextcloud-talk.botSecret",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.nextcloud-talk.botSecret",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.slack.accounts.*.appToken",
|
|
targetType: "channels.slack.accounts.*.appToken",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.slack.accounts.*.appToken",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.slack.accounts.*.botToken",
|
|
targetType: "channels.slack.accounts.*.botToken",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.slack.accounts.*.botToken",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.slack.accounts.*.signingSecret",
|
|
targetType: "channels.slack.accounts.*.signingSecret",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.slack.accounts.*.signingSecret",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.slack.accounts.*.userToken",
|
|
targetType: "channels.slack.accounts.*.userToken",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.slack.accounts.*.userToken",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.slack.appToken",
|
|
targetType: "channels.slack.appToken",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.slack.appToken",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.slack.botToken",
|
|
targetType: "channels.slack.botToken",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.slack.botToken",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.slack.signingSecret",
|
|
targetType: "channels.slack.signingSecret",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.slack.signingSecret",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.slack.userToken",
|
|
targetType: "channels.slack.userToken",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.slack.userToken",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.telegram.accounts.*.botToken",
|
|
targetType: "channels.telegram.accounts.*.botToken",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.telegram.accounts.*.botToken",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.telegram.accounts.*.webhookSecret",
|
|
targetType: "channels.telegram.accounts.*.webhookSecret",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.telegram.accounts.*.webhookSecret",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.telegram.botToken",
|
|
targetType: "channels.telegram.botToken",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.telegram.botToken",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.telegram.webhookSecret",
|
|
targetType: "channels.telegram.webhookSecret",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.telegram.webhookSecret",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.zalo.accounts.*.botToken",
|
|
targetType: "channels.zalo.accounts.*.botToken",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.zalo.accounts.*.botToken",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.zalo.accounts.*.webhookSecret",
|
|
targetType: "channels.zalo.accounts.*.webhookSecret",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.zalo.accounts.*.webhookSecret",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.zalo.botToken",
|
|
targetType: "channels.zalo.botToken",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.zalo.botToken",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "channels.zalo.webhookSecret",
|
|
targetType: "channels.zalo.webhookSecret",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "channels.zalo.webhookSecret",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "cron.webhookToken",
|
|
targetType: "cron.webhookToken",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "cron.webhookToken",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "gateway.auth.token",
|
|
targetType: "gateway.auth.token",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "gateway.auth.token",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "gateway.auth.password",
|
|
targetType: "gateway.auth.password",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "gateway.auth.password",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "gateway.remote.password",
|
|
targetType: "gateway.remote.password",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "gateway.remote.password",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "gateway.remote.token",
|
|
targetType: "gateway.remote.token",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "gateway.remote.token",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "messages.tts.providers.*.apiKey",
|
|
targetType: "messages.tts.providers.*.apiKey",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "messages.tts.providers.*.apiKey",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
providerIdPathSegmentIndex: 3,
|
|
},
|
|
{
|
|
id: "models.providers.*.apiKey",
|
|
targetType: "models.providers.apiKey",
|
|
targetTypeAliases: ["models.providers.*.apiKey"],
|
|
configFile: "openclaw.json",
|
|
pathPattern: "models.providers.*.apiKey",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
providerIdPathSegmentIndex: 2,
|
|
trackProviderShadowing: true,
|
|
},
|
|
{
|
|
id: "models.providers.*.headers.*",
|
|
targetType: "models.providers.headers",
|
|
targetTypeAliases: ["models.providers.*.headers.*"],
|
|
configFile: "openclaw.json",
|
|
pathPattern: "models.providers.*.headers.*",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
providerIdPathSegmentIndex: 2,
|
|
},
|
|
{
|
|
id: "skills.entries.*.apiKey",
|
|
targetType: "skills.entries.apiKey",
|
|
targetTypeAliases: ["skills.entries.*.apiKey"],
|
|
configFile: "openclaw.json",
|
|
pathPattern: "skills.entries.*.apiKey",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "talk.apiKey",
|
|
targetType: "talk.apiKey",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "talk.apiKey",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "talk.providers.*.apiKey",
|
|
targetType: "talk.providers.*.apiKey",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "talk.providers.*.apiKey",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "tools.web.fetch.firecrawl.apiKey",
|
|
targetType: "tools.web.fetch.firecrawl.apiKey",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "tools.web.fetch.firecrawl.apiKey",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "tools.web.search.apiKey",
|
|
targetType: "tools.web.search.apiKey",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "tools.web.search.apiKey",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "plugins.entries.brave.config.webSearch.apiKey",
|
|
targetType: "plugins.entries.brave.config.webSearch.apiKey",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "plugins.entries.brave.config.webSearch.apiKey",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "tools.web.search.gemini.apiKey",
|
|
targetType: "tools.web.search.gemini.apiKey",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "tools.web.search.gemini.apiKey",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "plugins.entries.google.config.webSearch.apiKey",
|
|
targetType: "plugins.entries.google.config.webSearch.apiKey",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "plugins.entries.google.config.webSearch.apiKey",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "tools.web.search.grok.apiKey",
|
|
targetType: "tools.web.search.grok.apiKey",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "tools.web.search.grok.apiKey",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "plugins.entries.xai.config.webSearch.apiKey",
|
|
targetType: "plugins.entries.xai.config.webSearch.apiKey",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "plugins.entries.xai.config.webSearch.apiKey",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "tools.web.search.kimi.apiKey",
|
|
targetType: "tools.web.search.kimi.apiKey",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "tools.web.search.kimi.apiKey",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "plugins.entries.moonshot.config.webSearch.apiKey",
|
|
targetType: "plugins.entries.moonshot.config.webSearch.apiKey",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "plugins.entries.moonshot.config.webSearch.apiKey",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "tools.web.search.perplexity.apiKey",
|
|
targetType: "tools.web.search.perplexity.apiKey",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "tools.web.search.perplexity.apiKey",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "plugins.entries.perplexity.config.webSearch.apiKey",
|
|
targetType: "plugins.entries.perplexity.config.webSearch.apiKey",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "plugins.entries.perplexity.config.webSearch.apiKey",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "plugins.entries.firecrawl.config.webSearch.apiKey",
|
|
targetType: "plugins.entries.firecrawl.config.webSearch.apiKey",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "plugins.entries.firecrawl.config.webSearch.apiKey",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
{
|
|
id: "plugins.entries.tavily.config.webSearch.apiKey",
|
|
targetType: "plugins.entries.tavily.config.webSearch.apiKey",
|
|
configFile: "openclaw.json",
|
|
pathPattern: "plugins.entries.tavily.config.webSearch.apiKey",
|
|
secretShape: SECRET_INPUT_SHAPE,
|
|
expectedResolvedValue: "string",
|
|
includeInPlan: true,
|
|
includeInConfigure: true,
|
|
includeInAudit: true,
|
|
},
|
|
];
|
|
|
|
export { SECRET_TARGET_REGISTRY };
|